Ejemplo n.º 1
0
        public void WriteConfigurationTest()
        {
            var config = new AutoConfigFileConfiguration();

            config.Initialize();

            config.MaxDisplayListItems         = 12;
            config.DebugMode                   = DebugModes.DeveloperErrorMessage;
            config.ApplicationName             = "Changed";
            config.SendAdminEmailConfirmations = true;
            config.Write();

            string text = File.ReadAllText(TestHelpers.GetTestConfigFilePath());

            Console.WriteLine(text);

            Assert.IsTrue(text.Contains(@"<add key=""DebugMode"" value=""DeveloperErrorMessage"" />"));
            Assert.IsTrue(text.Contains(@"<add key=""MaxDisplayListItems"" value=""12"" />"));
            Assert.IsTrue(text.Contains(@"<add key=""SendAdminEmailConfirmations"" value=""True"" />"));

            var config2 = new AutoConfigFileConfiguration();

            config2.Initialize();

            Assert.AreEqual(config2.MaxDisplayListItems, 12);
            Assert.AreEqual(config2.ApplicationName, "Changed");

            // reset to default val
            config2.MaxDisplayListItems = 15;
            config2.Write();
        }
        public void AutoConfigWriteConfigurationTest()
        {
            var config = new AutoConfigFileConfiguration();
            config.Initialize();

            Assert.IsNotNull(config);
            Assert.IsFalse(string.IsNullOrEmpty(config.ApplicationName));
            Assert.AreEqual(config.MaxDisplayListItems, 15);

            config.MaxDisplayListItems = 17;
            config.Write();

            var config2 = new AutoConfigFileConfiguration();
            config2.Initialize();

            Assert.AreEqual(config2.MaxDisplayListItems, 17);

            // reset to default val
            config2.MaxDisplayListItems = 15;
            config2.Write();
        }
        public void AutoConfigWriteConfigurationTest()
        {
            var config = new AutoConfigFileConfiguration();

            config.Initialize();

            Assert.IsNotNull(config);
            Assert.IsFalse(string.IsNullOrEmpty(config.ApplicationName));
            Assert.AreEqual(config.MaxDisplayListItems, 15);

            config.MaxDisplayListItems = 17;
            config.Write();

            var config2 = new AutoConfigFileConfiguration();

            config2.Initialize();

            Assert.AreEqual(config2.MaxDisplayListItems, 17);

            // reset to default val
            config2.MaxDisplayListItems = 15;
            config2.Write();
        }
        public void DefaultConstructorWithAppSettingsProviderTest()
        {
            var config = new AutoConfigFileConfiguration();

            // Create a customized provider to set provider options
            var provider = new ConfigurationFileConfigurationProvider <AutoConfigFileConfiguration>()
            {
                ConfigurationSection = null, // forces to AppSettings
                EncryptionKey        = "seekrit123",
                PropertiesToEncrypt  = "MailServer,MailServerPassword"
            };

            config.Initialize(provider);

            // Config File and custom section should have been created in config file
            string text = File.ReadAllText(TestHelpers.GetTestConfigFilePath());

            Assert.IsFalse(string.IsNullOrEmpty(text));
            Assert.IsTrue(text.Contains("<appSettings>"));

            // MailServer/MailServerPassword value should be encrypted
            Console.WriteLine(text);

            config.ApplicationName = "Updated Configuration";
            config.Write();

            config = null;
            config = new AutoConfigFileConfiguration();
            config.Initialize(provider);

            config.Initialize(); // should reload, reread

            Console.WriteLine("Application Name: " + config.ApplicationName);

            Assert.IsTrue(config.ApplicationName == "Updated Configuration");
        }
        public void WriteConfigurationTest()
        {
            var config = new AutoConfigFileConfiguration();
            config.Initialize();

            config.MaxDisplayListItems = 12;
            config.DebugMode = DebugModes.DeveloperErrorMessage;
            config.ApplicationName = "Changed";
            config.SendAdminEmailConfirmations = true;

            // update complex type
            config.License.Company = "Updated Company";
            config.License.Name = "New User";
            config.License.LicenseKey = 22;

            config.Write();

            string text = File.ReadAllText(TestHelpers.GetTestConfigFilePath());
            Console.WriteLine(text);

            Assert.IsTrue(text.Contains(@"<add key=""DebugMode"" value=""DeveloperErrorMessage"" />"));
            Assert.IsTrue(text.Contains(@"<add key=""MaxDisplayListItems"" value=""12"" />"));
            Assert.IsTrue(text.Contains(@"<add key=""SendAdminEmailConfirmations"" value=""True"" />"));

            Assert.IsTrue(text.Contains(@"<add key=""License"" value=""New User,Updated Company,22"" />"));

            var config2 = new AutoConfigFileConfiguration();
            config2.Initialize();

            Assert.AreEqual(config2.MaxDisplayListItems, 12);
            Assert.AreEqual(config2.ApplicationName, "Changed");
            Assert.AreEqual("Updated Company",config2.License.Company);

            // reset to default val
            config2.MaxDisplayListItems = 15;
            config2.Write();
        }
        public void DefaultConstructorWithAppSettingsProviderTest()
        {
            var config = new AutoConfigFileConfiguration();

            // Create a customized provider to set provider options
            var provider = new ConfigurationFileConfigurationProvider<AutoConfigFileConfiguration>()
            {
                ConfigurationSection = null, // forces to AppSettings
                EncryptionKey = "seekrit123",
                PropertiesToEncrypt = "MailServer,MailServerPassword"
            };

            config.Initialize(provider);

            // Config File and custom section should have been created in config file
            string text = File.ReadAllText(TestHelpers.GetTestConfigFilePath());

            Assert.IsFalse(string.IsNullOrEmpty(text));
            Assert.IsTrue(text.Contains("<appSettings>"));

            // MailServer/MailServerPassword value should be encrypted
            Console.WriteLine(text);

            config.ApplicationName = "Updated Configuration";
            config.Write();

            config = null;
            config = new AutoConfigFileConfiguration();
            config.Initialize(provider);

            config.Initialize(); // should reload, reread

            Console.WriteLine("Application Name: " + config.ApplicationName);

            Assert.IsTrue(config.ApplicationName == "Updated Configuration");
        }