public async Task TestFundingSummaryPeriodEndReportGeneration() { string csv = string.Empty; DateTime dateTime = DateTime.UtcNow; string filename = $"10036143_1_Funding Summary Report {dateTime:yyyyMMdd-HHmmss}"; Mock <IReportServiceContext> reportServiceContextMock = new Mock <IReportServiceContext>(); reportServiceContextMock.SetupGet(x => x.JobId).Returns(1); reportServiceContextMock.SetupGet(x => x.SubmissionDateTimeUtc).Returns(DateTime.UtcNow); reportServiceContextMock.SetupGet(x => x.Ukprn).Returns(10036143); Mock <ILogger> logger = new Mock <ILogger>(); Mock <IDateTimeProvider> dateTimeProviderMock = new Mock <IDateTimeProvider>(); Mock <IStreamableKeyValuePersistenceService> storage = new Mock <IStreamableKeyValuePersistenceService>(); IValueProvider valueProvider = new ValueProvider(); ITopicAndTaskSectionOptions topicsAndTasks = TestConfigurationHelper.GetTopicsAndTasks(); storage.Setup(x => x.SaveAsync($"{filename}.csv", It.IsAny <string>(), It.IsAny <CancellationToken>())).Callback <string, string, CancellationToken>((key, value, ct) => csv = value).Returns(Task.CompletedTask); IIntUtilitiesService intUtilitiesService = new IntUtilitiesService(); IJsonSerializationService jsonSerializationService = new JsonSerializationService(); IXmlSerializationService xmlSerializationService = new XmlSerializationService(); DataStoreConfiguration dataStoreConfiguration = new DataStoreConfiguration() { ILRDataStoreConnectionString = new TestConfigurationHelper().GetSectionValues <DataStoreConfiguration>("DataStoreSection").ILRDataStoreConnectionString, ILRDataStoreValidConnectionString = new TestConfigurationHelper().GetSectionValues <DataStoreConfiguration>("DataStoreSection").ILRDataStoreValidConnectionString }; IIlr1819ValidContext IlrValidContextFactory() { var options = new DbContextOptionsBuilder <ILR1819_DataStoreEntitiesValid>().UseSqlServer(dataStoreConfiguration.ILRDataStoreValidConnectionString).Options; return(new ILR1819_DataStoreEntitiesValid(options)); } IIlr1819RulebaseContext IlrRulebaseValidContextFactory() { var options = new DbContextOptionsBuilder <ILR1819_DataStoreEntities>().UseSqlServer(dataStoreConfiguration.ILRDataStoreConnectionString).Options; return(new ILR1819_DataStoreEntities(options)); } IIlrProviderService ilrProviderService = new IlrProviderService(logger.Object, storage.Object, xmlSerializationService, dateTimeProviderMock.Object, intUtilitiesService, IlrValidContextFactory, IlrRulebaseValidContextFactory); IFM36ProviderService fm36ProviderService = new FM36ProviderService(logger.Object, storage.Object, jsonSerializationService, intUtilitiesService, IlrRulebaseValidContextFactory); IStringUtilitiesService stringUtilitiesService = new StringUtilitiesService(); dateTimeProviderMock.Setup(x => x.GetNowUtc()).Returns(dateTime); dateTimeProviderMock.Setup(x => x.ConvertUtcToUk(It.IsAny <DateTime>())).Returns(dateTime); var fundingSummaryPeriodEndModelBuilder = new FundingSummaryPeriodEndModelBuilder(); var report = new ReportService.Service.Reports.PeriodEnd.FundingSummaryPeriodEndReport(logger.Object, storage.Object, ilrProviderService, fm36ProviderService, stringUtilitiesService, dateTimeProviderMock.Object, valueProvider, topicsAndTasks, fundingSummaryPeriodEndModelBuilder); await report.GenerateReport(reportServiceContextMock.Object, null, false, CancellationToken.None); csv.Should().NotBeNullOrEmpty(); File.WriteAllText($"{filename}.csv", csv); TestCsvHelper.CheckCsv(csv, new CsvEntry(new FundingSummaryPeriodEndMapper(), 1)); }
public void SerializationServiceSerializeImplementsISerializationServiceInterfaceTest() { var serializationService = new JsonSerializationService(); var testImplementsInterface = serializationService as ISerializationService; Assert.IsNotNull(testImplementsInterface); }
public void SerializationServiceSerializeObjectSerializesToStringTest() { var serializationService = new JsonSerializationService(); var testObject = new SerializationTestClass("Jamie", DateTime.Now); var serializedObject = serializationService.SerializeFormData(testObject); Assert.IsInstanceOfType(serializedObject, typeof (string)); }
static void Main(string[] args) { //initialize services IJsonSerializationService <ApplicationSettings> jsonSerializationService = new JsonSerializationService <ApplicationSettings>(); //serialization service IAudioService audioService = new AudioService(); //audio service IApplicationSettingsService applicationSettingsService = new ApplicationSettingsService(jsonSerializationService, audioService); //application service //get current application settings ApplicationSettings applicationSettings = applicationSettingsService.GetApplicationSettings(); //add applicationSettings.Settings.Add(new Setting() { Name = "eac3to", Value = @"c:\exe\eac3to.exe" }); //save to disc applicationSettingsService.Save(applicationSettings); var errors = applicationSettingsService.Errors; //get settings applicationSettings = applicationSettingsService.GetApplicationSettings(); errors = applicationSettingsService.Errors; System.Console.ReadLine(); }
public void GetSubmissionOptions_Success() { var httpClientMock = new Mock <IBespokeHttpClient>(); var serialisationService = new JsonSerializationService(); var items = new List <CollectionType>() { new CollectionType() { Type = "ILR", Description = "ILR data submission" }, new CollectionType() { Type = "ESF", Description = "ESF data submission" } }; httpClientMock.Setup(x => x.GetDataAsync("testurl/api/org/collection-types/10000")).ReturnsAsync(() => serialisationService.Serialize(items)); var pollyRegistryMock = new Mock <IReadOnlyPolicyRegistry <string> >(); pollyRegistryMock.Setup(x => x.Get <IAsyncPolicy>("HttpRetryPolicy")).Returns(Policy.NoOpAsync); var apiSettings = new ApiSettings() { JobManagementApiBaseUrl = "testurl/api" }; var service = new CollectionManagementService(httpClientMock.Object, apiSettings, new JsonSerializationService()); var data = service.GetSubmssionOptionsAsync(10000).Result; data.Count().Should().Be(2); data.Any(x => x.Name == "ILR" && x.Title == "ILR data submission").Should().BeTrue(); data.Any(x => x.Name == "ESF" && x.Title == "ESF data submission").Should().BeTrue(); }
public void GetCurrentPeriod_Success() { var httpClientMock = new Mock <IBespokeHttpClient>(); var serialisationService = new JsonSerializationService(); var rp = new ReturnPeriod() { CollectionName = "ILR1819", PeriodNumber = 1, CalendarMonth = 8, CalendarYear = 2018, StartDateTimeUtc = new DateTime(2018, 8, 22), EndDateTimeUtc = new DateTime(2018, 9, 04) }; httpClientMock.Setup(x => x.GetDataAsync("testurl/api/returns-calendar/ILR1819/current")).ReturnsAsync(() => serialisationService.Serialize(rp)); var pollyRegistryMock = new Mock <IReadOnlyPolicyRegistry <string> >(); pollyRegistryMock.Setup(x => x.Get <IAsyncPolicy>("HttpRetryPolicy")).Returns(Policy.NoOpAsync); var apiSettings = new ApiSettings() { JobManagementApiBaseUrl = "testurl/api" }; var service = new CollectionManagementService(httpClientMock.Object, apiSettings, new JsonSerializationService()); var data = service.GetCurrentPeriodAsync("ILR1819").Result; data.Should().NotBeNull(); data.PeriodNumber.Should().Be(1); }
public void SerializationServiceDeSerializeStringDeSerializesUsingTypeNameToObjectTest() { var serializationService = new JsonSerializationService(); var testObject = new SerializationTestClass("Bob", DateTime.Now); var serializedObject = serializationService.SerializeFormData(testObject); var deserializedObject = serializationService.DeSerializeFormData(serializedObject); Assert.IsInstanceOfType(deserializedObject, typeof (SerializationTestClass)); }
public void SerializationServiceSerializeObjectSerializesToStringTest() { var serializationService = new JsonSerializationService(); var testObject = new SerializationTestClass("Jamie", DateTime.Now); var serializedObject = serializationService.SerializeFormData(testObject); Assert.IsInstanceOfType(serializedObject, typeof(string)); }
public void GetFormDataFragmentInvalidJsonThrowsUnsupportedOperationExceptionTest() { var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); const string serializedObject = "<xml>Not Json</xml>"; dataFragmentService.GetFragment(serializedObject, "Addresses", new KeyValuePair <string, string>()); }
public void SerializationServiceDeSerializeStringDeSerializesUsingTypeNameToObjectTest() { var serializationService = new JsonSerializationService(); var testObject = new SerializationTestClass("Bob", DateTime.Now); var serializedObject = serializationService.SerializeFormData(testObject); var deserializedObject = serializationService.DeSerializeFormData(serializedObject); Assert.IsInstanceOfType(deserializedObject, typeof(SerializationTestClass)); }
public void RemoveFormDataFragmentThrowsNotFoundExceptionTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); dataFragmentService.RemoveFragment(serializedObject, "InvalidFragmentName", new KeyValuePair<string, string>()); }
public void mkvmergelanguageservice_can_get_languages_test() { //given IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService service = new MKVMergeLanguageService(jsonSerializationService); //when var languages = service.GetLanguages(); //then languages.Count().Should().BeGreaterThan(0); }
public void GetFormDataFragmentThrowsNotFoundExceptionTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); dataFragmentService.GetFragment(serializedObject, "InvalidFragmentName", new KeyValuePair <string, string>()); }
public void mkvmergelanguageservice_returns_undetermined_when_language_not_found_test() { //given IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService service = new MKVMergeLanguageService(jsonSerializationService); //when var language = service.GetLanguageByName("nolanguage"); //then language.Value.Should().Be("und"); }
/// <summary> /// Default c'tor with predefined Services /// </summary> public PredefinedServiceFacade() { RequestService = new RequestService(); RequestParameterService = new UrlRequestParameterService(); MappingService = new JsonMapperService(); GeolocationMappingService = new GoogleGeolocationMappingService(); CachingService = new CachingService(); SerializationService = new JsonSerializationService(); ThreadService = new ThreadService(); }
public void mkvmergelanguageservice_returns_correct_language_test() { //given IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService service = new MKVMergeLanguageService(jsonSerializationService); //when var language = service.GetLanguageByName("English"); //then language.Value.Should().Be("eng"); }
public void mkvmergelanguageservice_returns_correct_language_test() { //given IJsonSerializationService <ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService <ISOLanguageCodeCollection>(); IMKVMergeLanguageService service = new MKVMergeLanguageService(jsonSerializationService); //when var language = service.GetLanguageByName("English"); //then language.Value.Should().Be("eng"); }
public void mkvmergelanguageservice_can_get_languages_test() { //given IJsonSerializationService <ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService <ISOLanguageCodeCollection>(); IMKVMergeLanguageService service = new MKVMergeLanguageService(jsonSerializationService); //when var languages = service.GetLanguages(); //then languages.Count().Should().BeGreaterThan(0); }
public void UpdateFormDataFragmentInvalidJsonThrowsUnsupportedOperationExceptionTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); const string serializedFragmentObject = "<xml>Not Json</xml>"; dataFragmentService.UpdateFragment(serializedObject, serializedFragmentObject, "Owners", new KeyValuePair <string, string>()); }
public void RemoveFormDataFragmentReturnsSerializedStringTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var result = dataFragmentService.RemoveFragment(serializedObject, "Owners", new KeyValuePair<string, string>()); Assert.IsInstanceOfType(result, typeof(string)); }
public void RemoveFormDataArrayFragmentReturnsUpdatedSerializedStringTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var result = dataFragmentService.RemoveFragment(serializedObject, "Owners", new KeyValuePair<string, string>()); Assert.AreNotEqual(serializedObject.Length, result.Length); }
public void GetFormDataFragmentFilteredThrowsNotFoundExceptionTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var filterQuery = new KeyValuePair <string, string>("Id", "3"); dataFragmentService.GetFragment(serializedObject, "Addresses", filterQuery); }
public void Json_SerializeModel_Fail() { var ser = new JsonSerializationService(); var recurse = new RecurseModel(); recurse.ToInfinity = recurse; var result = ser.Serialize(recurse); Assert.IsNotNull(result); }
public void mkvmergelanguageservice_returns_undetermined_when_language_not_found_test() { //given IJsonSerializationService <ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService <ISOLanguageCodeCollection>(); IMKVMergeLanguageService service = new MKVMergeLanguageService(jsonSerializationService); //when var language = service.GetLanguageByName("nolanguage"); //then language.Value.Should().Be("und"); }
public void Json_TrySerializeModel_Succeed() { var now = DateTime.Now; var model = ReminderFactory.Create(now); var ser = new JsonSerializationService(); string serializerResult; var result = ser.TrySerialize(model, out serializerResult); Assert.IsTrue(result); Assert.IsNotNull(serializerResult); }
public void GetFormDataFragmentReturnsReturnsSerializedStringTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var result = dataFragmentService.GetFragment(serializedObject, "Owners", new KeyValuePair <string, string>()); Assert.IsInstanceOfType(result, typeof(string)); }
public void GetFormDataFragmentReturnsCorrectFragmentTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var targetFragmentserializedObject = serilializedService.SerializeFormData(testClass.Name); var result = dataFragmentService.GetFragment(serializedObject, "Name", new KeyValuePair<string, string>()); Assert.AreEqual(targetFragmentserializedObject, result); }
public void RemoveFormDataArrayFragmentReturnsUpdatedSerializedStringTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var result = dataFragmentService.RemoveFragment(serializedObject, "Owners", new KeyValuePair <string, string>()); Assert.AreNotEqual(serializedObject.Length, result.Length); }
public async Task GetFM35DataTest() { string fm35OutputKey = "FundingFm35OutputEmpty.json"; Mock <ILogger> logger = new Mock <ILogger>(); Mock <IStreamableKeyValuePersistenceService> redis = new Mock <IStreamableKeyValuePersistenceService>(); IJsonSerializationService jsonSerializationService = new JsonSerializationService(); IIntUtilitiesService intUtilitiesService = new IntUtilitiesService(); DataStoreConfiguration dataStoreConfiguration = new DataStoreConfiguration() { ILRDataStoreConnectionString = string.Empty, ILRDataStoreValidConnectionString = string.Empty }; IIlr1819ValidContext IlrValidContextFactory() { var options = new DbContextOptionsBuilder <ILR1819_DataStoreEntitiesValid>().UseSqlServer(dataStoreConfiguration.ILRDataStoreValidConnectionString).Options; return(new ILR1819_DataStoreEntitiesValid(options)); } IIlr1819RulebaseContext IlrRulebaseContextFactory() { var options = new DbContextOptionsBuilder <ILR1819_DataStoreEntities>().UseSqlServer(dataStoreConfiguration.ILRDataStoreConnectionString).Options; return(new ILR1819_DataStoreEntities(options)); } Mock <IReportServiceContext> reportServiceContextMock = new Mock <IReportServiceContext>(); reportServiceContextMock.SetupGet(x => x.JobId).Returns(1); reportServiceContextMock.SetupGet(x => x.SubmissionDateTimeUtc).Returns(DateTime.UtcNow); reportServiceContextMock.SetupGet(x => x.Ukprn).Returns(10033670); reportServiceContextMock.SetupGet(x => x.Filename).Returns("ILR-10033670-1819-20180704-120055-03"); reportServiceContextMock.SetupGet(x => x.FundingFM35OutputKey).Returns(fm35OutputKey); reportServiceContextMock.SetupGet(x => x.CollectionName).Returns("ILR1819"); redis.Setup(x => x.ContainsAsync(fm35OutputKey, It.IsAny <CancellationToken>())).ReturnsAsync(true); redis.Setup(x => x.GetAsync(fm35OutputKey, It.IsAny <Stream>(), It.IsAny <CancellationToken>())).Callback <string, Stream, CancellationToken>((st, sr, ct) => File.OpenRead(@"Service\FundingFm35OutputEmpty.json").CopyTo(sr)).Returns(Task.CompletedTask); FM35ProviderService fm35ProviderService = new FM35ProviderService( logger.Object, redis.Object, jsonSerializationService, intUtilitiesService, IlrValidContextFactory, IlrRulebaseContextFactory); FM35Global fm35Data = await fm35ProviderService.GetFM35Data(reportServiceContextMock.Object, CancellationToken.None); fm35Data.Learners.Should().BeNullOrEmpty(); }
public void GetFormDataFragmentReturnsCorrectFragmentTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var targetFragmentserializedObject = serilializedService.SerializeFormData(testClass.Name); var result = dataFragmentService.GetFragment(serializedObject, "Name", new KeyValuePair <string, string>()); Assert.AreEqual(targetFragmentserializedObject, result); }
public void GetFormDataFilteredArrayFragmentReturnsCorrectFilteredFragmentTest2() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var targetFragmentserializedObject = serilializedService.SerializeFormData(testClass.Owners.FirstOrDefault(o => o.Address.Id == 2).Address); var filterQuery = new KeyValuePair<string, string>("Id", "2"); var result = dataFragmentService.GetFragment(serializedObject, "Address", filterQuery); Assert.AreEqual(targetFragmentserializedObject, result); }
public void Json_TrySerializeModel_Fail() { var ser = new JsonSerializationService(); var recurse = new RecurseModel(); recurse.ToInfinity = recurse; string serializerResult; var result = ser.TrySerialize(recurse, out serializerResult); Assert.IsFalse(result); Assert.IsNull(serializerResult); }
public void Json_DeserializeModel_Fail() { var json = "{INVALID\"TimeRange\":2,\"DayRange\":3,\"CustomDays\":1,\"Title\":\"Test Reminder\"," + "\"Notes\":\"Exercise full range of motion\",\"HowManyTimesADay\":4," + "\"StartDate\":\"2020-02-11T13:43:34.9119383-07:00\",\"EndDate\":\"2020-03-03T13:43:34.9119383-07:00\"," + "\"NextDue\":\"2020-02-18T13:43:34.9119383-07:00\"}"; var ser = new JsonSerializationService(); var result = ser.Deserialize <Reminder>(json); Assert.IsInstanceOfType(result, typeof(Reminder)); }
public void Json_SerializeModel_Succeed() { var now = DateTime.Now; var model = ReminderFactory.Create(now); Assert.AreEqual(now, model.NextDue); var ser = new JsonSerializationService(); var result = ser.Serialize(model); Assert.IsNotNull(result); }
public void UpdateFormDataFragmentUpdateFilteredFragmentThrowsNotFoundExceptionTest() { var testClass = GetTestClass(); var updatedTestClass = GetUpdatedTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var serializedFragmentObject = serilializedService.SerializeFormData(updatedTestClass.Owners); var filterQuery = new KeyValuePair <string, string>("Id", "6"); dataFragmentService.UpdateFragment(serializedObject, serializedFragmentObject, "Owners", filterQuery); }
public void bluraytitleparserservice_can_set_audio_id_test() { List<ProcessOutputLineItem> lineItems = new List<ProcessOutputLineItem> { new ProcessOutputLineItem() { Id = 1, Text = "3: DTS Master Audio, French, 5.1 channels, 24 bits, 48kHz" } }; IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, lineItems, languageService); BluRayTitleInfo info = parserService.GetTitleInfo(); info.AudioList[0].Id.Should().Be("3:"); }
public void bluraytitleparserservice_can_set_audio_type_ac3_test() { List<ProcessOutputLineItem> lineItems = new List<ProcessOutputLineItem> { new ProcessOutputLineItem() { Id = 1, Text = "3: Dolby Digital Audio English 448 kbps 5.1 / 48 kHz / 448 kbps" } }; IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, lineItems,languageService); BluRayTitleInfo info = parserService.GetTitleInfo(); info.AudioList[0].AudioType.Should().Be(EnumAudioType.AC3); }
public void GetFormDataFilteredArrayFragmentReturnsCorrectFilteredFragmentTest2() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var targetFragmentserializedObject = serilializedService.SerializeFormData(testClass.Owners.FirstOrDefault(o => o.Address.Id == 2).Address); var filterQuery = new KeyValuePair <string, string>("Id", "2"); var result = dataFragmentService.GetFragment(serializedObject, "Address", filterQuery); Assert.AreEqual(targetFragmentserializedObject, result); }
public static void Main(string[] args) { var configBuilder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile(ConfigFile); IConfiguration configuration = configBuilder.Build(); IJobStatusWebServiceCallServiceConfig auditingPersistenceServiceConfig = new JobStatusWebServiceCallServiceConfig(configuration["jobSchedulerApiEndPoint"]); IQueueConfiguration queueConfiguration = new JobStatusQueueConfiguration(configuration["queueConnectionString"], configuration["queueName"], 1); ISerializationService serializationService = new JsonSerializationService(); IApplicationLoggerSettings applicationLoggerOutputSettings = new ApplicationLoggerSettings { ApplicationLoggerOutputSettingsCollection = new List <IApplicationLoggerOutputSettings> { new MsSqlServerApplicationLoggerOutputSettings { ConnectionString = configuration["logConnectionString"], MinimumLogLevel = LogLevel.Information }, new ConsoleApplicationLoggerOutputSettings { MinimumLogLevel = LogLevel.Information } }, TaskKey = "Job Fail Status", EnableInternalLogs = true, JobId = "Job Fail Status Service", MinimumLogLevel = LogLevel.Information }; IExecutionContext executionContext = new ExecutionContext { JobId = "Job Fail Status Service", TaskKey = "Job Fail Status" }; ILogger logger = new SeriLogger(applicationLoggerOutputSettings, executionContext); IDateTimeProvider dateTimeProvider = new DateTimeProvider.DateTimeProvider(); IQueueSubscriptionService <JobContextDto> queueSubscriptionService = new QueueSubscriptionService <JobContextDto>(queueConfiguration, serializationService, logger); IJobStatusWebServiceCallService <JobContextDto> failedJobsWebServiceCallService = new FailedJobsWebServiceCallService(auditingPersistenceServiceConfig, queueSubscriptionService, serializationService, logger); failedJobsWebServiceCallService.Subscribe(); logger.LogInfo($"Started {executionContext.JobId}!"); ManualResetEvent oSignalEvent = new ManualResetEvent(false); oSignalEvent.WaitOne(); }
public void JsonSerializationServiceTest() { ISerializationService serializationService = new JsonSerializationService(); var data = new Dictionary <char, double> { ['а'] = 0.5, ['б'] = 0.25, ['в'] = 0.333 }; var serializedData = serializationService.SerializeData(data); const string expectedResult = "{\"а\":0.5,\"б\":0.25,\"в\":0.333}"; Assert.That(serializedData == expectedResult); }
public void RemoveFormDataFilteredArrayFragmentReturnsUpdatedSerializedStringTestTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var fragmentToRemove = testClass.Owners.FirstOrDefault(a => a.Id == 2); testClass.Owners.Remove(fragmentToRemove); var expectedFragmentserializedObject = serilializedService.SerializeFormData(testClass); var filterQuery = new KeyValuePair<string, string>("Id", "2"); var result = dataFragmentService.RemoveFragment(serializedObject, "Owners", filterQuery); Assert.AreEqual(expectedFragmentserializedObject, result); }
public void UpdateFormDataArrayFragmentReturnsUpdatedSerializedStringTest() { var testClass = GetTestClass(); var updatedTestClass = GetUpdatedTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var serializedFragmentObject = serilializedService.SerializeFormData(updatedTestClass.Owners); testClass.Owners = updatedTestClass.Owners; var expectedSerializedObject = serilializedService.SerializeFormData(testClass); var result = dataFragmentService.UpdateFragment(serializedObject, serializedFragmentObject, "Owners", new KeyValuePair<string, string>()); Assert.AreEqual(expectedSerializedObject, result); }
public static void Main(string[] args) { var configBuilder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile(ConfigFile); IConfiguration configuration = configBuilder.Build(); IAuditingPersistenceServiceConfig auditingPersistenceServiceConfig = new AudtingPersistenceServiceConfig(configuration["auditConnectionString"]); IQueueConfiguration queueConfiguration = new AuditQueueConfiguration(configuration["queueConnectionString"], configuration["queueName"], 1); ISerializationService serializationService = new JsonSerializationService(); IApplicationLoggerSettings applicationLoggerOutputSettings = new ApplicationLoggerSettings { ApplicationLoggerOutputSettingsCollection = new List <IApplicationLoggerOutputSettings> { new MsSqlServerApplicationLoggerOutputSettings { ConnectionString = configuration["logConnectionString"], MinimumLogLevel = LogLevel.Information }, new ConsoleApplicationLoggerOutputSettings { MinimumLogLevel = LogLevel.Information } }, TaskKey = "Audit", EnableInternalLogs = true, JobId = "Audit Service", MinimumLogLevel = LogLevel.Information }; IExecutionContext executionContext = new ExecutionContext { JobId = "Audit Service", TaskKey = "Audit" }; ILogger logger = new SeriLogger(applicationLoggerOutputSettings, executionContext); IQueueSubscriptionService <AuditingDto> queueSubscriptionService = new QueueSubscriptionService <AuditingDto>(queueConfiguration, serializationService, logger); IAuditingPersistenceService <AuditingDto> auditingPersistenceService = new AuditingPersistenceService <AuditingDto>(auditingPersistenceServiceConfig, queueSubscriptionService, logger); auditingPersistenceService.Subscribe(); logger.LogInfo("Started!"); ManualResetEvent oSignalEvent = new ManualResetEvent(false); oSignalEvent.WaitOne(); }
public void bluraytitleparserservice_can_set_audio_id_test() { List <ProcessOutputLineItem> lineItems = new List <ProcessOutputLineItem> { new ProcessOutputLineItem() { Id = 1, Text = "3: DTS Master Audio, French, 5.1 channels, 24 bits, 48kHz" } }; IJsonSerializationService <ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService <ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, lineItems, languageService); BluRayTitleInfo info = parserService.GetTitleInfo(); info.AudioList[0].Id.Should().Be("3:"); }
static void Main(string[] args) { //initialize services IJsonSerializationService<ApplicationSettings> jsonSerializationService = new JsonSerializationService<ApplicationSettings>(); //serialization service IAudioService audioService = new AudioService(); //audio service IApplicationSettingsService applicationSettingsService = new ApplicationSettingsService(jsonSerializationService, audioService); //application service //get current application settings ApplicationSettings applicationSettings = applicationSettingsService.GetApplicationSettings(); //add applicationSettings.Settings.Add(new Setting() { Name = "eac3to", Value = @"c:\exe\eac3to.exe" }); //save to disc applicationSettingsService.Save(applicationSettings); var errors = applicationSettingsService.Errors; //get settings applicationSettings = applicationSettingsService.GetApplicationSettings(); errors = applicationSettingsService.Errors; System.Console.ReadLine(); }
private void HandlesLoadToolStripMenuItemClick(string settingsFile) { try { if (!string.IsNullOrEmpty(settingsFile)) { IJsonSerializationService<BatchGuyEAC3ToSettings> jsonSerializationService = new JsonSerializationService<BatchGuyEAC3ToSettings>(); IBatchGuyEAC3ToSettingsService batchGuyEAC3ToSettingsService = new BatchGuyEAC3ToSettingsService(jsonSerializationService); _batchGuyEAC3ToSettings = batchGuyEAC3ToSettingsService.GetBatchGuyEAC3ToSettings(settingsFile); if (batchGuyEAC3ToSettingsService.Errors.Count() > 0) { MessageBox.Show(batchGuyEAC3ToSettingsService.Errors.GetErrorMessage(), "Error Occurred.", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (_batchGuyEAC3ToSettings.EAC3ToSettings.IsExtractForRemux) { MessageBox.Show("You cannot load a (.batchGuyEac3toSettings) file that is for Remuxing!", "Error Occurred.", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { this._encodeTypeChangedBecauseOfSettingsLoad = true; this.LoadEpisodeNumbers(); this.LoadScreen(); gbScreen.SetEnabled(true); saveToolStripMenuItem.Enabled = true; createX264BatchFileToolStripMenuItem.Enabled = true; createMkvmergeBatchFileToolStripMenuItem.Enabled = true; } } } catch (Exception ex) { _displayErrorMessageService.DisplayError(new ErrorMessage() { DisplayMessage = "There was an error trying to load the eac3to Settings File!", DisplayTitle = "Error.", Exception = ex, MethodNameWhereExceptionOccurred = MethodBase.GetCurrentMethod().Name }); } }
public void bluraytitleparserservice_is_id_valid_test() { List<ProcessOutputLineItem> lineItems = new List<ProcessOutputLineItem> { new ProcessOutputLineItem() { Id = 1, Text = "4: Subtitle (pgs), French" } }; IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, lineItems,languageService); bool isValid = parserService.IsIdValid("4:"); isValid.Should().BeTrue(); }
public void SerializationServiceSerializeImplementsISerializationServiceInterfaceTest() { var serializationService = new JsonSerializationService(); var testImplementsInterface = serializationService as ISerializationService; Assert.IsNotNull(testImplementsInterface); }
private void bgwEac3toLoadTitle_DoWork(object sender, DoWorkEventArgs e) { try { IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ICommandLineProcessService commandLineProcessService = e.Argument as CommandLineProcessService; List<ProcessOutputLineItem> processOutputLineItems = commandLineProcessService.GetProcessOutputLineItems(); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, processOutputLineItems, languageService); _bluRaySummaryInfo.BluRayTitleInfo = parserService.GetTitleInfo(); } catch (Exception ex) { _displayErrorMessageService.DisplayError(new ErrorMessage() { DisplayMessage = "There was a problem loading the title!", DisplayTitle = "Error.", Exception = ex, MethodNameWhereExceptionOccurred = MethodBase.GetCurrentMethod().Name }); } }
public void UpdateFormDataFragmentInvalidJsonThrowsUnsupportedOperationExceptionTest() { var testClass = GetTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); const string serializedFragmentObject = "<xml>Not Json</xml>"; dataFragmentService.UpdateFragment(serializedObject, serializedFragmentObject, "Owners", new KeyValuePair<string, string>()); }
public void UpdateFormDataFragmentUpdateFilteredFragmentThrowsNotFoundExceptionTest() { var testClass = GetTestClass(); var updatedTestClass = GetUpdatedTestClass(); var serilializedService = new JsonSerializationService(); var dataFragmentService = new DataFragmentJsonService(serilializedService); var serializedObject = serilializedService.SerializeFormData(testClass); var serializedFragmentObject = serilializedService.SerializeFormData(updatedTestClass.Owners); var filterQuery = new KeyValuePair<string, string>("Id", "6"); dataFragmentService.UpdateFragment(serializedObject, serializedFragmentObject, "Owners", filterQuery); }
private void HandlesSaveToolStripMenuItemClick() { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "BatchGuy File|*.batchGuyEac3toSettings"; sfd.Title = "Save eac3to Settings File"; sfd.ShowDialog(); if (!string.IsNullOrEmpty(sfd.FileName)) { dgvFiles.CurrentCell = null; //force the cell change so cell changed event fires _batchGuyEAC3ToSettings.X264Files = this.GetX264Files(); _batchGuyEAC3ToSettings.X264FileSettings = this.GetX264FileSettings(); IJsonSerializationService<BatchGuyEAC3ToSettings> jsonSerializationService = new JsonSerializationService<BatchGuyEAC3ToSettings>(); IBatchGuyEAC3ToSettingsService batchGuyEAC3ToSettingsService = new BatchGuyEAC3ToSettingsService(jsonSerializationService); batchGuyEAC3ToSettingsService.Save(sfd.FileName, _batchGuyEAC3ToSettings); if (batchGuyEAC3ToSettingsService.Errors.Count() > 0) { MessageBox.Show(batchGuyEAC3ToSettingsService.Errors.GetErrorMessage(), "Error Occurred.", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
public void bluraytitleparserservice_is_id_not_valid_test() { List<ProcessOutputLineItem> lineItems = new List<ProcessOutputLineItem> { new ProcessOutputLineItem() { Id = 1, Text = "(core: DTS, 5.1 channels, 1509kpps, 48kHz)" } }; IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, lineItems, languageService); bool isValid = parserService.IsIdValid("core:"); isValid.Should().BeFalse(); }
public void bluraytitleparserservice_can_set_audio_type_lpcm_test() { List<ProcessOutputLineItem> lineItems = new List<ProcessOutputLineItem> { new ProcessOutputLineItem() { Id = 1, Text = "3: English / LPCM Audio / 1.0 / 48 kHz / 1152 kbps / 24-bit" } }; IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, lineItems,languageService); BluRayTitleInfo info = parserService.GetTitleInfo(); info.AudioList[0].AudioType.Should().Be(EnumAudioType.LPCM); }
public void bluraytitleparserservice_can_set_header_text_test() { List<ProcessOutputLineItem> lineItems = new List<ProcessOutputLineItem> { new ProcessOutputLineItem() { Id = 1, Text = "M2TS, 1 video track, 1 audio track, 1 subtitle track, 0:58:28, 50i" } }; IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, lineItems, languageService); BluRayTitleInfo info = parserService.GetTitleInfo(); info.HeaderText.Should().Be(lineItems[0].Text); }
public void bluraytitleparserservice_can_set_subtitle_language_test() { List<ProcessOutputLineItem> lineItems = new List<ProcessOutputLineItem> { new ProcessOutputLineItem() { Id = 1, Text = "4: Subtitle (pgs), French" } }; IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, lineItems,languageService); BluRayTitleInfo info = parserService.GetTitleInfo(); info.Subtitles[0].Language.Should().Be("French"); }
private void HandlesLoadToolStripMenuItemClick(string settingsFile) { try { if (!string.IsNullOrEmpty(settingsFile)) { IJsonSerializationService<BatchGuyEAC3ToSettings> jsonSerializationService = new JsonSerializationService<BatchGuyEAC3ToSettings>(); IBatchGuyEAC3ToSettingsService batchGuyEAC3ToSettingsService = new BatchGuyEAC3ToSettingsService(jsonSerializationService); _batchGuyEAC3ToSettings = batchGuyEAC3ToSettingsService.GetBatchGuyEAC3ToSettings(settingsFile); if (batchGuyEAC3ToSettingsService.Errors.Count() > 0) { MessageBox.Show(batchGuyEAC3ToSettingsService.Errors.GetErrorMessage(), "Error Occurred.", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { this.ReloadEac3ToSettingsAndBluRayDiscs(_batchGuyEAC3ToSettings); this.ReloadRemux(); this.SettxtRemuxSeasonNumberEnabledStatus(); } } } catch (Exception ex) { _displayErrorMessageService.DisplayError(new ErrorMessage() { DisplayMessage = "There was an error trying to load the eac3to Settings File!", DisplayTitle = "Error.", Exception = ex, MethodNameWhereExceptionOccurred = MethodBase.GetCurrentMethod().Name }); } }
public void bluraytitleparserservice_can_set_video_test() { List<ProcessOutputLineItem> lineItems = new List<ProcessOutputLineItem> { new ProcessOutputLineItem() { Id = 1, Text = "2: h264/AVC, 1080i50 (16:9)" } }; IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService languageService = new MKVMergeLanguageService(jsonSerializationService); ILineItemIdentifierService lineItemService = new BluRayTitleLineItemIdentifierService(); IBluRayTitleParserService parserService = new BluRayTitleParserService(lineItemService, lineItems,languageService); BluRayTitleInfo info = parserService.GetTitleInfo(); info.Video.Should().NotBeNull(); info.Video.Id.Should().Be("2:"); }
private void LoadMKVLanguageDropDownBoxes() { IJsonSerializationService<ISOLanguageCodeCollection> jsonSerializationService = new JsonSerializationService<ISOLanguageCodeCollection>(); IMKVMergeLanguageService service = new MKVMergeLanguageService(jsonSerializationService); foreach (MKVMergeLanguageItem item in service.GetLanguages()) { _bindingListSubtitlesMKVMergeDefaultSettingsLanguage.Add(item); _bindingListAudioMKVMergeDefaultSettingsLanguage.Add(item); } bsAudioMKVMergeDefaultSettingsLanguage.DataSource = _bindingListAudioMKVMergeDefaultSettingsLanguage; _bindingListAudioMKVMergeDefaultSettingsLanguage.AllowEdit = false; bsSubtitlesMKVMergeDefaultSettingsLanguage.DataSource = _bindingListSubtitlesMKVMergeDefaultSettingsLanguage; _bindingListSubtitlesMKVMergeDefaultSettingsLanguage.AllowEdit = false; }
private void HandlesSaveToolStripMenuItemClick() { this.SetEac3ToConfiguration(); this.SetEAC3ToRemuxFileNameTemplate(); if (this.IsAtLeastOneDiscLoaded() && this.IsScreenValid()) { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "BatchGuy File|*.batchGuyEac3toSettings"; sfd.Title = "Save eac3to Settings File"; sfd.ShowDialog(); if (!string.IsNullOrEmpty(sfd.FileName)) { dgvBluRayDiscInfo.CurrentCell = null; //force the cell change so cell changed event fires dgvBluRaySummary.CurrentCell = null; //force the cell change so cell changed event fires List<BluRayDiscInfo> discs = this.GetBluRayDiscInfoList(); if (_batchGuyEAC3ToSettings == null) _batchGuyEAC3ToSettings = new BatchGuyEAC3ToSettings(); _batchGuyEAC3ToSettings.BluRayDiscs = discs; _batchGuyEAC3ToSettings.EAC3ToSettings = _eac3toConfiguration; IJsonSerializationService<BatchGuyEAC3ToSettings> jsonSerializationService = new JsonSerializationService<BatchGuyEAC3ToSettings>(); IBatchGuyEAC3ToSettingsService batchGuyEAC3ToSettingsService = new BatchGuyEAC3ToSettingsService(jsonSerializationService); batchGuyEAC3ToSettingsService.Save(sfd.FileName, _batchGuyEAC3ToSettings); if (batchGuyEAC3ToSettingsService.Errors.Count() > 0) { MessageBox.Show(batchGuyEAC3ToSettingsService.Errors.GetErrorMessage(), "Error Occurred.", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }