From eb4bac3b8f72203a306f83dcec861cdb7d869a56 Mon Sep 17 00:00:00 2001 From: Sami Mazouz Date: Tue, 24 May 2022 17:55:05 +0100 Subject: [PATCH] fix: settings extender working only with first instances (#3439) * test: settings extender works not only with first extender instance * fix: settings extender working only with first instances --- framework/core/src/Extend/Settings.php | 2 ++ .../tests/integration/extenders/SettingsTest.php | 12 +++++++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/framework/core/src/Extend/Settings.php b/framework/core/src/Extend/Settings.php index 986de3e33..a685addbc 100644 --- a/framework/core/src/Extend/Settings.php +++ b/framework/core/src/Extend/Settings.php @@ -95,6 +95,8 @@ class Settings implements ExtenderInterface $defaults->put($key, $value); } + + return $defaults; }); } diff --git a/framework/core/tests/integration/extenders/SettingsTest.php b/framework/core/tests/integration/extenders/SettingsTest.php index 588da8da6..797c59559 100644 --- a/framework/core/tests/integration/extenders/SettingsTest.php +++ b/framework/core/tests/integration/extenders/SettingsTest.php @@ -173,14 +173,16 @@ class SettingsTest extends TestCase (new Extend\Settings()) ->serializeToForum('customPrefix.unavailableCustomSetting3', 'custom-prefix.unavailable_custom_setting3') ->default('custom-prefix.unavailable_custom_setting3', 'extenderDefault') + ->default('custom-prefix.unavailable_custom_setting100', 'extenderDefault100'), + (new Extend\Settings()) + ->default('custom-prefix.unavailable_custom_setting200', 'extenderDefault200') ); - $value = $this->app() - ->getContainer() - ->make('flarum.settings') - ->get('custom-prefix.unavailable_custom_setting3', 'defaultParameterValue'); + $settings = $this->app()->getContainer()->make('flarum.settings'); - $this->assertEquals('extenderDefault', $value); + $this->assertEquals('extenderDefault', $settings->get('custom-prefix.unavailable_custom_setting3')); + $this->assertEquals('extenderDefault100', $settings->get('custom-prefix.unavailable_custom_setting100')); + $this->assertEquals('extenderDefault200', $settings->get('custom-prefix.unavailable_custom_setting200')); } /**