public async Task GetJobMetaDataById_Success() { IContainer container = Registrations(); FileUploadJob result; using (var scope = container.BeginLifetimeScope()) { // Create the schema in the database var options = scope.Resolve <DbContextOptions <JobQueueDataContext> >(); using (var context = new JobQueueDataContext(options)) { context.Database.EnsureCreated(); } IFileUploadJobManager manager = scope.Resolve <IFileUploadJobManager>(); var jobId = await manager.AddJob(new FileUploadJob() { JobId = 1, }); result = await manager.GetJobById(1); } result.Should().NotBeNull(); result.JobId.Should().Be(1); }
public async Task GetJobsByUkprnForDateRange_Success() { IContainer container = Registrations(); List <FileUploadJob> result; using (var scope = container.BeginLifetimeScope()) { // Create the schema in the database var options = scope.Resolve <DbContextOptions <JobQueueDataContext> >(); using (var context = new JobQueueDataContext(options)) { context.Database.EnsureCreated(); } IFileUploadJobManager manager = scope.Resolve <IFileUploadJobManager>(); await manager.AddJob(new FileUploadJob() { JobId = 1, Ukprn = 100 }); await manager.AddJob(new FileUploadJob() { JobId = 2, Ukprn = 100 }); result = (await manager.GetJobsByUkprnForDateRange(100, DateTime.UtcNow.AddMinutes(-1), DateTime.UtcNow)).ToList(); } result.Should().NotBeNull(); result.Count.Should().Be(2); }
public async Task GetLatestJobByUkprn_Success() { IContainer container = Registrations(); IEnumerable <FileUploadJob> items; using (var scope = container.BeginLifetimeScope()) { // Create the schema in the database var options = scope.Resolve <DbContextOptions <JobQueueDataContext> >(); using (var context = new JobQueueDataContext(options)) { context.Database.EnsureCreated(); } IFileUploadJobManager manager = scope.Resolve <IFileUploadJobManager>(); await manager.AddJob(new FileUploadJob() { JobId = 1, Ukprn = 10000116, PeriodNumber = 1, FileName = "ilr.xml", CollectionName = "ILR1819" }); await manager.AddJob(new FileUploadJob() { JobId = 2, Ukprn = 10000116, PeriodNumber = 2, FileName = "10000116/SUPPDATA-10000116-ESF-99999-20181109-090919.csv", CollectionName = "ESF" }); await manager.AddJob(new FileUploadJob() { JobId = 3, Ukprn = 10000116, PeriodNumber = 2, FileName = "eas.csv", CollectionName = "EAS" }); await manager.AddJob(new FileUploadJob() { JobId = 4, Ukprn = 10000119, PeriodNumber = 2, FileName = "eas11.csv", CollectionName = "EAS" }); items = (await manager.GetLatestJobByUkprn(new long[] { 10000116, 10000119 })).ToList(); } items.Should().NotBeEmpty(); items.Single(x => x.FileName.Equals("ilr.xml") && x.Ukprn == 10000116 && x.JobId == 1).Should().NotBeNull(); items.Single(x => x.FileName.Equals("eas11.csv") && x.Ukprn == 10000119 && x.JobId == 4).Should().NotBeNull(); }
public JobController(IJobManager jobManager, ILogger logger, IDateTimeProvider dateTimeProvider, IFileUploadJobManager fileUploadMetaDataManager) { _jobManager = jobManager; _logger = logger; _dateTimeProvider = dateTimeProvider; _fileUploadJobManager = fileUploadMetaDataManager; }
public EasMessageFactory( ILogger logger, IFileUploadJobManager fileUploadMetaDataManager, [KeyFilter(JobType.EasSubmission)] ITopicConfiguration topicConfiguration, IJobTopicTaskService jobTopicTaskService) : base(logger, fileUploadMetaDataManager, topicConfiguration, jobTopicTaskService) { }
public ReferenceDataMessageFactory( ILogger logger, IFileUploadJobManager fileUploadMetaDataManager, [KeyFilter(JobType.ReferenceDataFCS)] ITopicConfiguration topicConfiguration, IJobTopicTaskService jobTopicTaskService) : base(logger, fileUploadMetaDataManager, topicConfiguration, jobTopicTaskService) { }
public async Task GetJobMetDataById_Fail_zeroId() { IContainer container = Registrations(); using (var scope = container.BeginLifetimeScope()) { IFileUploadJobManager manager = scope.Resolve <IFileUploadJobManager>(); await Assert.ThrowsAsync <ArgumentException>(() => manager.GetJobById(0)); } }
public async Task AddJob_Null() { IContainer container = Registrations(); using (var scope = container.BeginLifetimeScope()) { IFileUploadJobManager manager = scope.Resolve <IFileUploadJobManager>(); await Assert.ThrowsAsync <ArgumentNullException>(() => manager.AddJob(null)); } }
public ValidationResultsController( IIndex <JobType, IKeyValuePersistenceService> storagePersistenceServices, ILogger logger, IFileUploadJobManager fileUploadMetaDataManager, IDateTimeProvider dateTimeProvider) { _storagePersistenceServices = storagePersistenceServices; _logger = logger; _fileUploadMetaDataManager = fileUploadMetaDataManager; _dateTimeProvider = dateTimeProvider; }
protected AbstractFileUploadMessageFactory( ILogger logger, IFileUploadJobManager fileUploadMetaDataManager, ITopicConfiguration topicConfiguration, IJobTopicTaskService jobTopicTaskService) { _logger = logger; _fileUploadJobManager = fileUploadMetaDataManager; _topicConfiguration = topicConfiguration; _jobTopicTaskService = jobTopicTaskService; }
public CrossLoadingService( CrossLoadMessageMapper crossLoadMessageMapper, IQueuePublishService <MessageCrossLoadDctToDcftDto> queuePublishService, IFileUploadJobManager jobQueueManager, ConnectionStrings connectionStrings) { _queuePublishService = queuePublishService; _jobQueueManager = jobQueueManager; _crossLoadMessageMapper = crossLoadMessageMapper; _connectionString = connectionStrings.Organisation; }
public async Task GetLatestJobByUkprnAndContractReference_Success() { IContainer container = Registrations(); FileUploadJob result; using (var scope = container.BeginLifetimeScope()) { // Create the schema in the database var options = scope.Resolve <DbContextOptions <JobQueueDataContext> >(); using (var context = new JobQueueDataContext(options)) { context.Database.EnsureCreated(); } IFileUploadJobManager manager = scope.Resolve <IFileUploadJobManager>(); await manager.AddJob(new FileUploadJob() { JobId = 1, Ukprn = 10000116, PeriodNumber = 1, FileName = "10000116/SUPPDATA-10000116-ESF-2270-20181109-090919.csv", CollectionName = "ESF" }); await manager.AddJob(new FileUploadJob() { JobId = 2, Ukprn = 10000116, PeriodNumber = 2, FileName = "10000116/SUPPDATA-10000116-ESF-99999-20181109-090919.csv", CollectionName = "ESF" }); await manager.AddJob(new FileUploadJob() { JobId = 3, Ukprn = 10000119, PeriodNumber = 2, FileName = "10000119/SUPPDATA-10000119-ESF-2270-20181109-090919.csv", CollectionName = "ESF" }); result = await manager.GetLatestJobByUkprnAndContractReference(10000116, "ESF-2270", "ESF"); } result.Should().NotBeNull(); result.FileName.Should().Be("10000116/SUPPDATA-10000116-ESF-2270-20181109-090919.csv"); result.Ukprn.Should().Be(10000116); result.JobId.Should().Be(1); }
private JobController GetController(IJobManager jobManager = null, IFileUploadJobManager fileUploadJobManager = null) { if (jobManager == null) { jobManager = new Mock <IJobManager>().Object; } if (fileUploadJobManager == null) { fileUploadJobManager = new Mock <IFileUploadJobManager>().Object; } var mockLogger = new Mock <ILogger>(); return(new JobController(jobManager, mockLogger.Object, new Mock <IDateTimeProvider>().Object, fileUploadJobManager)); }
public JobManager( Func <IJobQueueDataContext> contextFactory, IDateTimeProvider dateTimeProvider, IEmailNotifier emailNotifier, IFileUploadJobManager fileUploadJobManager, IEmailTemplateManager emailTemplateManager, ILogger logger, IReturnCalendarService returnCalendarService) : base(contextFactory, returnCalendarService, emailTemplateManager) { _contextFactory = contextFactory; _dateTimeProvider = dateTimeProvider; _emailNotifier = emailNotifier; _fileUploadJobManager = fileUploadJobManager; _emailTemplateManager = emailTemplateManager; _logger = logger; }
public async Task AddJobMetaData_Success_Values() { IContainer container = Registrations(); FileUploadJob savedJob; using (var scope = container.BeginLifetimeScope()) { // Create the schema in the database var options = scope.Resolve <DbContextOptions <JobQueueDataContext> >(); using (var context = new JobQueueDataContext(options)) { context.Database.EnsureCreated(); } FileUploadJob job = new FileUploadJob() { JobId = 1, Ukprn = 1000, FileName = "test.xml", StorageReference = "test-ref", FileSize = 10.5m, IsFirstStage = true, CollectionName = "ILR1718", PeriodNumber = 10, TermsAccepted = true, CollectionYear = 1819 }; IFileUploadJobManager manager = scope.Resolve <IFileUploadJobManager>(); await manager.AddJob(job); savedJob = await manager.GetJobById(1); } savedJob.Should().NotBeNull(); savedJob.JobId.Should().Be(1); savedJob.Ukprn.Should().Be(1000); savedJob.FileName.Should().Be("test.xml"); savedJob.FileSize.Should().Be(10.5m); savedJob.StorageReference.Should().Be("test-ref"); savedJob.IsFirstStage.Should().Be(true); savedJob.CollectionName.Should().Be("ILR1718"); savedJob.PeriodNumber.Should().Be(10); savedJob.TermsAccepted.Should().Be(true); savedJob.CollectionYear.Should().Be(1819); }
public async Task UpdateJob_Fail_InvalidJobId() { IContainer container = Registrations(); using (var scope = container.BeginLifetimeScope()) { // Create the schema in the database var options = scope.Resolve <DbContextOptions <JobQueueDataContext> >(); using (var context = new JobQueueDataContext(options)) { context.Database.EnsureCreated(); } IFileUploadJobManager manager = scope.Resolve <IFileUploadJobManager>(); await Assert.ThrowsAsync <ArgumentException>(() => manager.UpdateJobStage(100, false)); } }
public async Task GetLatestJobsPerPeriodByUkprn_Success() { IContainer container = Registrations(); List <FileUploadJob> result; using (var scope = container.BeginLifetimeScope()) { // Create the schema in the database var options = scope.Resolve <DbContextOptions <JobQueueDataContext> >(); using (var context = new JobQueueDataContext(options)) { context.Database.EnsureCreated(); } IFileUploadJobManager manager = scope.Resolve <IFileUploadJobManager>(); await manager.AddJob(new FileUploadJob() { JobId = 1, JobType = JobType.EsfSubmission, Ukprn = 10000116, FileName = "esf.csv", CollectionName = "ESF", CollectionYear = 1819, Status = JobStatusType.Completed, PeriodNumber = 1, DateTimeSubmittedUtc = DateTime.Now.AddMinutes(-10), }); await manager.AddJob(new FileUploadJob() { JobId = 2, JobType = JobType.EasSubmission, Ukprn = 10000116, FileName = "eas.csv", CollectionName = "EAS", CollectionYear = 1819, PeriodNumber = 1, Status = JobStatusType.Completed, DateTimeSubmittedUtc = DateTime.Now.AddMinutes(-10), }); await manager.AddJob(new FileUploadJob() { JobId = 3, Ukprn = 10000116, FileName = "ilr1819.xml", CollectionName = "ILR1819", CollectionYear = 1819, PeriodNumber = 1, JobType = JobType.IlrSubmission, Status = JobStatusType.Completed, }); await manager.AddJob(new FileUploadJob() { JobId = 4, Ukprn = 10000116, FileName = "ilr1718.xml", CollectionName = "ILR1718", CollectionYear = 1718, PeriodNumber = 1, JobType = JobType.IlrSubmission, Status = JobStatusType.Completed, }); await manager.AddJob(new FileUploadJob() { JobId = 5, Ukprn = 10000116, FileName = "ilr_latest_not_completed.xml", CollectionName = "ILR1819", CollectionYear = 1819, PeriodNumber = 1, JobType = JobType.IlrSubmission, Status = JobStatusType.Failed, DateTimeSubmittedUtc = DateTime.Now.AddMinutes(-50), }); result = (await manager.GetLatestJobsPerPeriodByUkprn(10000116, DateTime.Now.AddDays(-1), DateTime.Now)) .ToList(); } result.Should().NotBeNull(); result.Count.Should().Be(4); result.Single(x => x.JobType == JobType.EsfSubmission && x.JobId == 1 && x.FileName == "esf.csv").Should().NotBeNull(); result.Single(x => x.JobType == JobType.EasSubmission && x.JobId == 2 && x.FileName == "eas.csv").Should().NotBeNull(); result.Single(x => x.JobType == JobType.IlrSubmission && x.JobId == 3 && x.FileName == "ilr1819.xml" && x.CollectionYear == 1819).Should().NotBeNull(); result.Single(x => x.JobType == JobType.IlrSubmission && x.JobId == 4 && x.FileName == "ilr1718.xml" && x.CollectionYear == 1718).Should().NotBeNull(); }