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); }
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); }
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); }
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); }
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); }
public void GetValueTestSplitAStorageLine() { APIConnectionInformation apiInformation = new APIConnectionInformation(); string line = "storage=TOKEN123"; var fileinfo = new ConfigurationFileReader(); fileinfo.GetValue(line, apiInformation); Assert.AreEqual(apiInformation.StorageUri, "TOKEN123"); }
public void GetValueAccountEmail() { APIConnectionInformation apiInformation = new APIConnectionInformation(); string line = "[email protected]"; var fileinfo = new ConfigurationFileReader(); fileinfo.GetValue(line, apiInformation); Assert.AreEqual(apiInformation.AccountEmail, "*****@*****.**"); }
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); }
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); }
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()); }
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); }
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 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"); }
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)); }
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); }
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"); }
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); }
/// <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; }
/// <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")); }