예제 #1
0
        public IActionResult GetForPeriod(long ukprn, int period)
        {
            _logger.LogInfo($"Request received to get the with ukprn: {ukprn}; period: {period}");

            if (ukprn == 0 || period == 0)
            {
                _logger.LogWarning($"Request received with ukprn {ukprn} and period {period} one of which is 0");
                return(BadRequest());
            }

            var jobsList = _fileUploadJobManager.GetJobsByUkprnForPeriod(ukprn, period).ToList();

            _logger.LogInfo($"Returning {jobsList.Count} jobs successfully for ukprn :{ukprn}");
            return(Ok(jobsList));
        }
예제 #2
0
        public async Task GetJobsByUkprnForPeriod_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,
                    PeriodNumber = 1
                });

                await manager.AddJob(new FileUploadJob()
                {
                    JobId        = 2,
                    Ukprn        = 999900,
                    PeriodNumber = 2
                });

                await manager.AddJob(new FileUploadJob()
                {
                    JobId        = 2,
                    Ukprn        = 999900,
                    PeriodNumber = 2
                });

                result = (await manager.GetJobsByUkprnForPeriod(999900, 2)).ToList();
            }

            result.Should().NotBeNull();
            result.Count.Should().Be(2);
        }