Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthieu Aubry <mattab@users.noreply.github.com>2016-12-12 13:54:03 +0300
committerGitHub <noreply@github.com>2016-12-12 13:54:03 +0300
commit53454e8efd0ab2a03dd9bb9f837aa63f36cfe552 (patch)
treebe7dc483dad0dcac6577b73e9e82ede7bc097682 /tests/PHPUnit/Integration/Settings/BaseSettingsTestCase.php
parentb1c09fa5123155ab9cd79342a4a0cef42e80de7f (diff)
parent67f2661f24602a07ebee66172f8446887ab83787 (diff)
Merge pull request #10994 from piwik/3.x-dev3.0.0-rc2
3.0.0-rc2 release
Diffstat (limited to 'tests/PHPUnit/Integration/Settings/BaseSettingsTestCase.php')
-rw-r--r--tests/PHPUnit/Integration/Settings/BaseSettingsTestCase.php38
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/PHPUnit/Integration/Settings/BaseSettingsTestCase.php b/tests/PHPUnit/Integration/Settings/BaseSettingsTestCase.php
index 4a91af3a1c..2d56a0dce7 100644
--- a/tests/PHPUnit/Integration/Settings/BaseSettingsTestCase.php
+++ b/tests/PHPUnit/Integration/Settings/BaseSettingsTestCase.php
@@ -11,6 +11,7 @@ namespace Piwik\Tests\Integration\Settings;
use Piwik\Db;
use Piwik\Piwik;
use Piwik\Settings\FieldConfig;
+use Piwik\Settings\Setting;
/**
* @group PluginSettings
@@ -122,4 +123,41 @@ class BaseSettingsTestCase extends IntegrationTestCase
return $this->settings->makeSetting($name, $default = '', $type, function () {});
}
+ public function test_addSetting_shouldAddNewSetting()
+ {
+ $settingName = 'testSetting';
+ $setting = $this->buildSetting($settingName);
+ $settings = $this->createSettingsInstance();
+
+ $this->assertEmpty($settings->getSetting($settingName));
+
+ $settings->addSetting($setting);
+
+ $this->assertSame($setting, $settings->getSetting($settingName));
+ }
+
+ /**
+ * @expectedException \Exception
+ * @expectedExceptionMessage "testSetting" does already exist
+ */
+ public function test_addSetting_throwsException_IfSameSettingAddedTwice()
+ {
+ $settingName = 'testSetting';
+ $setting = $this->buildSetting($settingName);
+ $settings = $this->createSettingsInstance();
+
+ $settings->addSetting($setting);
+ $settings->addSetting($setting);
+ }
+
+ private function buildSetting($name, $type = null, $default = '')
+ {
+ if (!isset($type)) {
+ $type = FieldConfig::TYPE_STRING;
+ }
+
+ $userSetting = new Setting($name, $default, $type, 'MyPluginName');
+
+ return $userSetting;
+ }
}