Example #1
0
        public void TestPerSiteSettingsProvider()
        {
            var key      = "myKey";
            var value    = "myValue";
            var keyValue = new KeyValuePair <string, string>(key, value);

            var settings = new Mock <ISettings>(MockBehavior.Strict);

            settings.Setup(s => s.DeleteValue(_configSection, key)).Returns(true).Verifiable();
            settings.Setup(s => s.SetValue(_configSection, key, value)).Verifiable();
            settings.Setup(s => s.GetValue(_configSection, key)).Returns(value).Verifiable();
            settings.Setup(s => s.GetValues(_configSection)).Returns((new KeyValuePair <string, string>[] { keyValue }).ToList()).Verifiable();

            var perSiteSettingsProvider = new PerSiteSettingsProvider(settings.Object);

            perSiteSettingsProvider.SetValue(key, value);

            Assert.Equal(value, perSiteSettingsProvider.GetValue(key));

            var results = perSiteSettingsProvider.GetValues();

            Assert.Equal(1, results.Count());
            Assert.Equal(keyValue, results.ElementAt(0));

            perSiteSettingsProvider.DeleteValue(key);

            settings.Verify();
        }
        public DeploymentSettingsPrioritiesTests()
        {
            var settingsPriority1 = new Dictionary <string, string>();

            settingsPriority1["key1"] = "settingsPriority1_value1";
            settingsPriority1["key2"] = "settingsPriority1_value2";
            settingsPriority1["key3"] = "settingsPriority1_value3";
            settingsPriority1["key4"] = "settingsPriority1_value4";

            var settingsPriority2 = new Dictionary <string, string>();

            settingsPriority1["key2"] = "settingsPriority2_value2";
            settingsPriority1["key3"] = "settingsPriority2_value3";
            settingsPriority1["key5"] = "settingsPriority2_value5";
            settingsPriority1["key6"] = "settingsPriority2_value6";

            var settingsPriority50 = new Dictionary <string, string>();

            settingsPriority1["key1"] = "settingsPriority50_value1";
            settingsPriority1["key2"] = "settingsPriority50_value2";
            settingsPriority1["key5"] = "settingsPriority50_value5";
            settingsPriority1["key7"] = "settingsPriority50_value7";

            var testProvider1     = new BasicSettingsProvider(settingsPriority1, (SettingsProvidersPriority)1);
            var testProvider2     = new BasicSettingsProvider(settingsPriority2, (SettingsProvidersPriority)2);
            var testProvider50    = new BasicSettingsProvider(settingsPriority50, (SettingsProvidersPriority)50);
            var settingsProviders = new ISettingsProvider[] { testProvider1, testProvider50, testProvider2 };

            PerSiteSettingsProvider perSiteSettings = null;

            deploymentSettingsManager = new DeploymentSettingsManager(perSiteSettings, settingsProviders);
        }