Example #1
0
        public void TestReadStringSettings()
        {
            Type settingsClass = typeof(LocalMixedScopeSettings);
            var  settings      = ApplicationSettingsHelper.GetSettingsClassInstance(settingsClass);

            ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalMixedScopeSettings.PropertyApp1, "TestApp1");
            ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalMixedScopeSettings.PropertyApp2, "TestApp2");
            ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalMixedScopeSettings.PropertyUser1, "TestUser1");
            ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalMixedScopeSettings.PropertyUser2, "TestUser2");

            var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
            var path   = new ConfigurationSectionPath(typeof(LocalMixedScopeSettings), SettingScope.Application);
            var values = reader.GetSettingsValues(path);

            Assert.AreEqual(2, values.Count);
            Assert.AreEqual("TestApp1", values[LocalMixedScopeSettings.PropertyApp1]);
            Assert.AreEqual("TestApp2", values[LocalMixedScopeSettings.PropertyApp2]);

            path   = new ConfigurationSectionPath(typeof(LocalMixedScopeSettings), SettingScope.User);
            values = reader.GetSettingsValues(path);
            Assert.AreEqual(2, values.Count);
            Assert.AreEqual("TestUser1", values[LocalMixedScopeSettings.PropertyUser1]);
            Assert.AreEqual("TestUser2", values[LocalMixedScopeSettings.PropertyUser2]);

            SystemConfigurationHelper.RemoveSettingsValues(SystemConfigurationHelper.GetExeConfiguration(), settingsClass);
        }
		public void TestReadStringSettings()
		{
			Type settingsClass = typeof (LocalMixedScopeSettings);
			var settings = ApplicationSettingsHelper.GetSettingsClassInstance(settingsClass);

			ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalMixedScopeSettings.PropertyApp1, "TestApp1");
			ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalMixedScopeSettings.PropertyApp2, "TestApp2");
			ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalMixedScopeSettings.PropertyUser1, "TestUser1");
			ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalMixedScopeSettings.PropertyUser2, "TestUser2");

			var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
			var path = new ConfigurationSectionPath(typeof(LocalMixedScopeSettings), SettingScope.Application);
			var values = reader.GetSettingsValues(path);
			Assert.AreEqual(2, values.Count);
			Assert.AreEqual("TestApp1", values[LocalMixedScopeSettings.PropertyApp1]);
			Assert.AreEqual("TestApp2", values[LocalMixedScopeSettings.PropertyApp2]);

			path = new ConfigurationSectionPath(typeof(LocalMixedScopeSettings), SettingScope.User);
			values = reader.GetSettingsValues(path);
			Assert.AreEqual(2, values.Count);
			Assert.AreEqual("TestUser1", values[LocalMixedScopeSettings.PropertyUser1]);
			Assert.AreEqual("TestUser2", values[LocalMixedScopeSettings.PropertyUser2]);
			
			SystemConfigurationHelper.RemoveSettingsValues(SystemConfigurationHelper.GetExeConfiguration(), settingsClass);
		}
        public void TestReadStringSettings(Type localSettingsClass)
        {
            var settings = ApplicationSettingsHelper.GetSettingsClassInstance(localSettingsClass);

            settings.SetSharedPropertyValue(MixedScopeSettingsBase.PropertyApp1, "TestApp1");
            settings.SetSharedPropertyValue(MixedScopeSettingsBase.PropertyApp2, "TestApp2");
            settings.SetSharedPropertyValue(MixedScopeSettingsBase.PropertyUser1, "TestUser1");
            settings.SetSharedPropertyValue(MixedScopeSettingsBase.PropertyUser2, "TestUser2");

            var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
            var path   = new ConfigurationSectionPath(localSettingsClass, SettingScope.Application);
            var values = reader.GetSettingsValues(path);

            Assert.AreEqual(2, values.Count);
            Assert.AreEqual("TestApp1", values[MixedScopeSettingsBase.PropertyApp1]);
            Assert.AreEqual("TestApp2", values[MixedScopeSettingsBase.PropertyApp2]);

            path   = new ConfigurationSectionPath(localSettingsClass, SettingScope.User);
            values = reader.GetSettingsValues(path);
            Assert.AreEqual(2, values.Count);
            Assert.AreEqual("TestUser1", values[MixedScopeSettingsBase.PropertyUser1]);
            Assert.AreEqual("TestUser2", values[MixedScopeSettingsBase.PropertyUser2]);

            SystemConfigurationHelper.GetExeConfiguration().RemoveSettingsValues(localSettingsClass);
        }
Example #4
0
        public void ParseLinesTestSimpleValidList()
        {
            var fileinfo = new ConfigurationFileReader();

            string[] lines = new string[]
            {
                "token=TOKEN",
                "uri=URI",
                "storage=BUCKET",
                "account-email=EMAIL",
                "force-path=true",
                "disable-path-sanitization=true",
                "unsafe-ssl=true",
                "storage-unsafe-ssl=true"
            };
            QarnotCLI.APIConnectionInformation apiInformation = fileinfo.ParseLines(lines);
            Assert.AreEqual(apiInformation.Token, "TOKEN");
            Assert.AreEqual(apiInformation.ApiUri, "URI");
            Assert.AreEqual(apiInformation.StorageUri, "BUCKET");
            Assert.AreEqual(apiInformation.AccountEmail, "EMAIL");
            Assert.AreEqual(apiInformation.ForcePathStyle, true);
            Assert.AreEqual(true, apiInformation.DisableBucketPathsSanitization);
            Assert.AreEqual(true, apiInformation.UnsafeSsl);
            Assert.AreEqual(true, apiInformation.StorageUnsafeSsl);
        }
		public void TestReadXmlSettings()
		{
			Type settingsClass = typeof(LocalXmlSettings);
			var settings = ApplicationSettingsHelper.GetSettingsClassInstance(settingsClass);

			var appValue = @"<test><app/></test>";
			XmlDocument appDocument = new XmlDocument();
			appDocument.LoadXml(appValue);
			ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalXmlSettings.PropertyApp, appDocument);

			var userValue = @"<test><user/></test>";
			XmlDocument userDocument= new XmlDocument();
			userDocument.LoadXml(userValue);
			ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalXmlSettings.PropertyUser, userDocument);

			var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
			var path = new ConfigurationSectionPath(typeof(LocalXmlSettings), SettingScope.Application);
			var values = reader.GetSettingsValues(path);
			Assert.AreEqual(1, values.Count);

			XmlDocument testDocument = new XmlDocument();
			testDocument.LoadXml(values[LocalXmlSettings.PropertyApp]);
			Assert.AreEqual(appDocument.InnerXml, testDocument.InnerXml);

			path = new ConfigurationSectionPath(typeof(LocalXmlSettings), SettingScope.User);
			values = reader.GetSettingsValues(path);
			Assert.AreEqual(1, values.Count);

			testDocument = new XmlDocument();
			testDocument.LoadXml(values[LocalXmlSettings.PropertyUser]);
			Assert.AreEqual(userDocument.InnerXml, testDocument.InnerXml);

			SystemConfigurationHelper.RemoveSettingsValues(SystemConfigurationHelper.GetExeConfiguration(), settingsClass);
		}
Example #6
0
        public void GetValueTestDisableBucketPathSanitization()
        {
            APIConnectionInformation apiInformation = new APIConnectionInformation();
            string line = "disable-path-sanitization=true";

            var fileinfo = new ConfigurationFileReader();

            fileinfo.GetValue(line, apiInformation);
            Assert.AreEqual(apiInformation.DisableBucketPathsSanitization, true);
        }
Example #7
0
        public void GetValueTestForcePathStyle()
        {
            APIConnectionInformation apiInformation = new APIConnectionInformation();
            string line = "force-path=true";

            var fileinfo = new ConfigurationFileReader();

            fileinfo.GetValue(line, apiInformation);
            Assert.AreEqual(apiInformation.ForcePathStyle, true);
        }
Example #8
0
        public void ParseLinesEmptyListReturnAnEmptyObject()
        {
            var fileinfo = new ConfigurationFileReader();

            string[] lines = null;
            QarnotCLI.APIConnectionInformation apiInformation = fileinfo.ParseLines(lines);
            Assert.AreEqual(apiInformation.Token, null);
            Assert.AreEqual(apiInformation.ApiUri, null);
            Assert.AreEqual(apiInformation.StorageUri, null);
        }
Example #9
0
        public void GetValueTestSplitAStorageLine()
        {
            APIConnectionInformation apiInformation = new APIConnectionInformation();
            string line = "storage=TOKEN123";

            var fileinfo = new ConfigurationFileReader();

            fileinfo.GetValue(line, apiInformation);
            Assert.AreEqual(apiInformation.StorageUri, "TOKEN123");
        }
Example #10
0
        public void GetValueAccountEmail()
        {
            APIConnectionInformation apiInformation = new APIConnectionInformation();
            string line = "[email protected]";

            var fileinfo = new ConfigurationFileReader();

            fileinfo.GetValue(line, apiInformation);
            Assert.AreEqual(apiInformation.AccountEmail, "*****@*****.**");
        }
Example #11
0
        public void GetValueTestStorageUnsafeSsl()
        {
            APIConnectionInformation apiInformation = new APIConnectionInformation();
            string line = "storage-unsafe-ssl=true";

            var fileinfo = new ConfigurationFileReader();

            fileinfo.GetValue(line, apiInformation);
            Assert.AreEqual(apiInformation.StorageUnsafeSsl, true);
        }
Example #12
0
        public void ReadFile_WhenNonExistingFilePath_ThrowsFileNotFoundException()
        {
            //arrange
            var configurationFileReader = new ConfigurationFileReader();

            //act
            Action readFile = () => configurationFileReader.ReadFile("randomFilePath");

            //assert
            readFile.Should().Throw <FileNotFoundException> ();
        }
        public void ReadAll_Should_ThrowException_When_ProvidedDuplicateChecks()
        {
            // Arrange
            File.Copy("TestConfigurations\\DuplicateCheck.xml", "conf\\DuplicateCheck.xml");
            var reader = new ConfigurationFileReader();

            // Act & Assert
            Assert.Throws <DuplicateHealthCheckException>(() =>
            {
                _ = reader.ReadAll();
            });
        }
        public void Read_Should_ReturnNoGroups_When_ProvidedXmlWithoutHealthChecks()
        {
            // Arrange
            File.Copy("TestConfigurations\\EmptyHealthChecks.xml", "conf\\invalid.xml");
            var reader = new ConfigurationFileReader();

            // Act
            var groups = reader.Read("conf\\invalid.xml");

            // Assert
            Assert.Empty(groups);
        }
        public void ReadAll_Should_ReturnEmptyGroupList_When_DirectoryDoesNotExist()
        {
            // Arrange
            Directory.Delete("conf", true);
            var reader = new ConfigurationFileReader();

            // Act
            var groups = reader.ReadAll();

            // Assert
            Assert.Empty(groups);
        }
        public void Read_Should_ReturnNoGroups_When_ProvidedXmlWithMissingElement()
        {
            // Arrange
            File.Copy("TestConfigurations\\InValidConfig.xml", "conf\\invalid.xml");
            var reader = new ConfigurationFileReader();

            // Act
            var groups = reader.Read("conf\\invalid.xml");

            // Assert
            Assert.Empty(groups);
        }
        public void Read_Should_ReturnGroups_When_ProvidedProperXml()
        {
            // Arrange
            File.Copy("TestConfigurations\\ValidConfig1.xml", "conf\\valid.xml");
            var reader = new ConfigurationFileReader();

            // Act
            var groups = reader.Read("conf\\valid.xml");

            // Assert
            Assert.NotEmpty(groups);
        }
Example #18
0
        public void ParseLinesTestMissingInformationReturnAPartialObject()
        {
            var fileinfo = new ConfigurationFileReader();

            string[] lines = new string[]
            {
                "token=TOKEN",
            };
            QarnotCLI.APIConnectionInformation apiInformation = fileinfo.ParseLines(lines);
            Assert.AreEqual(apiInformation.Token, "TOKEN");
            Assert.AreEqual(apiInformation.ApiUri, null);
            Assert.AreEqual(apiInformation.StorageUri, null);
        }
        private static void TestReadNoSettings(Type localSettingsClass)
        {
			SystemConfigurationHelper.GetExeConfiguration().RemoveSettingsValues(localSettingsClass);

			var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
			var path = new ConfigurationSectionPath(localSettingsClass, SettingScope.Application);
			var values = reader.GetSettingsValues(path);
			Assert.AreEqual(0, values.Count);

            path = new ConfigurationSectionPath(localSettingsClass, SettingScope.User);
			values = reader.GetSettingsValues(path);
			Assert.AreEqual(0, values.Count);
		}
        public void Read_Should_ReturnNoCalendars_When_ProvidedUnknownElement()
        {
            // Arrange
            File.Copy("TestConfigurations\\CalendarInvalidExclusion.xml", "conf\\calendar.xml");
            var reader = new ConfigurationFileReader();

            // Act
            var groups = reader.Read("conf\\calendar.xml");
            var check  = groups.FirstOrDefault().Checks.FirstOrDefault();

            // Assert
            Assert.Equal(0, check.QuietPeriods.Count);
        }
        public void Read_Should_ReturnCronCalendar_When_ProvidedCronElement()
        {
            // Arrange
            File.Copy("TestConfigurations\\CalendarCronExclusion.xml", "conf\\calendar.xml");
            var reader = new ConfigurationFileReader();

            // Act
            var groups = reader.Read("conf\\calendar.xml");
            var check  = groups.FirstOrDefault().Checks.FirstOrDefault();

            // Assert
            _ = Assert.IsAssignableFrom <CronCalendar>(check.QuietPeriods.Calendars.FirstOrDefault());
        }
Example #22
0
        public void ReadFile_WhenFileIsEmpty_ThrowsArgumentNullException()
        {
            //arrange
            var configurationFileReader = new ConfigurationFileReader();

            //act
            Action readFile = () =>
                              configurationFileReader.ReadFile(
                "TestData\\Empty_Config.txt");

            //assert
            readFile.Should().Throw <ArgumentNullException> ();
        }
        public void ReadAll_Should_ReturnUnionOfGroups_When_ProvidedProperXmlFiles()
        {
            // Arrange
            File.Copy("TestConfigurations\\ValidConfig1.xml", "conf\\valid1.xml");
            File.Copy("TestConfigurations\\ValidConfig2.xml", "conf\\valid2.xml");
            var reader = new ConfigurationFileReader();

            // Act
            var groups = reader.ReadAll();

            // Assert
            Assert.Equal(3, groups.Count);
        }
        private static void TestReadNoSettings(Type localSettingsClass)
        {
            SystemConfigurationHelper.GetExeConfiguration().RemoveSettingsValues(localSettingsClass);

            var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
            var path   = new ConfigurationSectionPath(localSettingsClass, SettingScope.Application);
            var values = reader.GetSettingsValues(path);

            Assert.AreEqual(0, values.Count);

            path   = new ConfigurationSectionPath(localSettingsClass, SettingScope.User);
            values = reader.GetSettingsValues(path);
            Assert.AreEqual(0, values.Count);
        }
		public void TestReadNoSettings()
		{
			Type settingsClass = typeof(LocalMixedScopeSettings);
			SystemConfigurationHelper.RemoveSettingsValues(SystemConfigurationHelper.GetExeConfiguration(), settingsClass);

			var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
			var path = new ConfigurationSectionPath(typeof(LocalMixedScopeSettings), SettingScope.Application);
			var values = reader.GetSettingsValues(path);
			Assert.AreEqual(0, values.Count);

			path = new ConfigurationSectionPath(typeof(LocalMixedScopeSettings), SettingScope.User);
			values = reader.GetSettingsValues(path);
			Assert.AreEqual(0, values.Count);
		}
Example #26
0
        public void ParseLinesTestNonOrededReturnANormalObject()
        {
            var fileinfo = new ConfigurationFileReader();

            string[] lines = new string[]
            {
                "storage=BUCKET",
                "token=TOKEN",
                "uri=URI",
            };
            QarnotCLI.APIConnectionInformation apiInformation = fileinfo.ParseLines(lines);
            Assert.AreEqual(apiInformation.Token, "TOKEN");
            Assert.AreEqual(apiInformation.ApiUri, "URI");
            Assert.AreEqual(apiInformation.StorageUri, "BUCKET");
        }
Example #27
0
        public void TestReadNoSettings()
        {
            Type settingsClass = typeof(LocalMixedScopeSettings);

            SystemConfigurationHelper.RemoveSettingsValues(SystemConfigurationHelper.GetExeConfiguration(), settingsClass);

            var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
            var path   = new ConfigurationSectionPath(typeof(LocalMixedScopeSettings), SettingScope.Application);
            var values = reader.GetSettingsValues(path);

            Assert.AreEqual(0, values.Count);

            path   = new ConfigurationSectionPath(typeof(LocalMixedScopeSettings), SettingScope.User);
            values = reader.GetSettingsValues(path);
            Assert.AreEqual(0, values.Count);
        }
        public void Read_Should_ReturnParsedExclusionCorrectly_When_ProvidedMultipleQuietPeriods()
        {
            // Arrange
            File.Copy("TestConfigurations\\CalendarTwoCronExclusion.xml", "conf\\calendar.xml");
            var reader    = new ConfigurationFileReader();
            var today     = DateTime.UtcNow;
            var eventTime = new DateTimeOffset(
                new DateTime(today.Year, today.Month, 15, 7, 0, 0, DateTimeKind.Local));

            // Act
            var groups = reader.Read("conf\\calendar.xml");
            var check  = groups.FirstOrDefault().Checks.FirstOrDefault();

            // Assert
            Assert.True(check.QuietPeriods.IsQuietPeriod(eventTime));
        }
Example #29
0
        public void ReadFile_WhenFileContainsInformation_ReturnsExpectedList()
        {
            //arrange
            var configurationFileReader = new ConfigurationFileReader();
            var expectedList            = new List <Configuration>
            {
                new Configuration {
                    ConfigurationId = "ordersPerHour", ConfigurationValue = "6000"
                }
            };

            //act
            var configurationList = configurationFileReader.ReadFile(
                "TestData\\Base_Config.txt");

            //assert
            configurationList.Should().BeEquivalentTo(expectedList);
        }
Example #30
0
        public void ParseLinesTestMoreThanRequiredVariablesSendNoError()
        {
            var fileinfo = new ConfigurationFileReader();

            string[] lines = new string[]
            {
                "token=TOKENTOEARLY",
                "token=TOKEN",
                "test=NOT1",
                "token123=NOT2",
                "abctoken=NOT3",
                "tokenTOKEN=",
                "uri=URI",
                "storage=BUCKET",
            };
            QarnotCLI.APIConnectionInformation apiInformation = fileinfo.ParseLines(lines);
            Assert.AreEqual(apiInformation.Token, "TOKEN");
            Assert.AreEqual(apiInformation.ApiUri, "URI");
            Assert.AreEqual(apiInformation.StorageUri, "BUCKET");
        }
Example #31
0
        public void TestReadXmlSettings()
        {
            Type settingsClass = typeof(LocalXmlSettings);
            var  settings      = ApplicationSettingsHelper.GetSettingsClassInstance(settingsClass);

            var         appValue    = @"<test><app/></test>";
            XmlDocument appDocument = new XmlDocument();

            appDocument.LoadXml(appValue);
            ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalXmlSettings.PropertyApp, appDocument);

            var         userValue    = @"<test><user/></test>";
            XmlDocument userDocument = new XmlDocument();

            userDocument.LoadXml(userValue);
            ApplicationSettingsExtensions.SetSharedPropertyValue(settings, LocalXmlSettings.PropertyUser, userDocument);

            var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
            var path   = new ConfigurationSectionPath(typeof(LocalXmlSettings), SettingScope.Application);
            var values = reader.GetSettingsValues(path);

            Assert.AreEqual(1, values.Count);

            XmlDocument testDocument = new XmlDocument();

            testDocument.LoadXml(values[LocalXmlSettings.PropertyApp]);
            Assert.AreEqual(appDocument.InnerXml, testDocument.InnerXml);

            path   = new ConfigurationSectionPath(typeof(LocalXmlSettings), SettingScope.User);
            values = reader.GetSettingsValues(path);
            Assert.AreEqual(1, values.Count);

            testDocument = new XmlDocument();
            testDocument.LoadXml(values[LocalXmlSettings.PropertyUser]);
            Assert.AreEqual(userDocument.InnerXml, testDocument.InnerXml);

            SystemConfigurationHelper.RemoveSettingsValues(SystemConfigurationHelper.GetExeConfiguration(), settingsClass);
        }
		public void TestReadStringSettings(Type localSettingsClass)
        {
			var settings = ApplicationSettingsHelper.GetSettingsClassInstance(localSettingsClass);

			settings.SetSharedPropertyValue(MixedScopeSettingsBase.PropertyApp1, "TestApp1");
            settings.SetSharedPropertyValue(MixedScopeSettingsBase.PropertyApp2, "TestApp2");
            settings.SetSharedPropertyValue(MixedScopeSettingsBase.PropertyUser1, "TestUser1");
            settings.SetSharedPropertyValue(MixedScopeSettingsBase.PropertyUser2, "TestUser2");

			var reader = new ConfigurationFileReader(SystemConfigurationHelper.GetExeConfiguration().FilePath);
			var path = new ConfigurationSectionPath(localSettingsClass, SettingScope.Application);
			var values = reader.GetSettingsValues(path);
			Assert.AreEqual(2, values.Count);
            Assert.AreEqual("TestApp1", values[MixedScopeSettingsBase.PropertyApp1]);
            Assert.AreEqual("TestApp2", values[MixedScopeSettingsBase.PropertyApp2]);

			path = new ConfigurationSectionPath(localSettingsClass, SettingScope.User);
			values = reader.GetSettingsValues(path);
			Assert.AreEqual(2, values.Count);
            Assert.AreEqual("TestUser1", values[MixedScopeSettingsBase.PropertyUser1]);
            Assert.AreEqual("TestUser2", values[MixedScopeSettingsBase.PropertyUser2]);
			
			SystemConfigurationHelper.GetExeConfiguration().RemoveSettingsValues(localSettingsClass);
		}
Example #33
0
 /// <summary>
 /// Default constructor
 /// <param name="configFileLocation">The absolute path of the configuration file</param>
 /// <param name="currentSoftwareVersion">The current version number of the software</param>
 /// </summary>
 public Eugene(string configFileLocation, double currentSoftwareVersion)
 {
     _configFileReader       = new ConfigurationFileReader(configFileLocation);
     _configuration          = new Configuration.Configuration(_configFileReader.FileContents);
     _currentSoftwareVersion = currentSoftwareVersion;
 }
Example #34
0
 /// <summary>
 /// Constructor that reads the current local software version from the local Eugene file
 /// </summary>
 /// <param name="configFileLocation">The absolute path of the configuration file</param>
 public Eugene(string configFileLocation)
 {
     _configFileReader       = new ConfigurationFileReader(configFileLocation);
     _configuration          = new Configuration.Configuration(_configFileReader.FileContents);
     _currentSoftwareVersion = double.Parse(_configuration.GetValue("localVersion"));
 }