public void ValidationErrorsTest_KeyFound()
        {
            var keyValuePersistenceService = new Mock <IKeyValuePersistenceService>();
            var logger             = new Mock <ESFA.DC.Logging.Interfaces.ILogger>();
            var jobMetaServiceMock = new Mock <IFileUploadJobManager>();

            var mockLogger = new Mock <ILogger>();

            jobMetaServiceMock.Setup(x => x.GetJobById(1)).Returns(new FileUploadJob()
            {
                JobId = 1, Ukprn = 1, JobType = JobType.IlrSubmission
            });

            var validationerrors = "1/1/Rule Violation Report 00010101-000000.json";

            keyValuePersistenceService.Setup(x => x.ContainsAsync(validationerrors, default(CancellationToken))).Returns(Task.FromResult(true));

            keyValuePersistenceService.Setup(x => x.GetAsync(validationerrors, default(CancellationToken))).Returns(Task.FromResult("{\"test\":\"1\"}"));

            var mockKeyValuePersistenceServices = new Mock <IIndex <JobType, IKeyValuePersistenceService> >();

            mockKeyValuePersistenceServices.SetupGet(x => x[JobType.IlrSubmission])
            .Returns(keyValuePersistenceService.Object);
            var controller = new ValidationResultsController(mockKeyValuePersistenceServices.Object, logger.Object, jobMetaServiceMock.Object, new DateTimeProvider.DateTimeProvider());
            var result     = controller.Get(1, 1).Result;

            result.Should().BeAssignableTo <OkObjectResult>("{\"test\":\"1\"}");
        }
        public void ValidationErrorsTest_KeyNotFound()
        {
            var keyValuePersistenceService = new Mock <IKeyValuePersistenceService>();
            var logger = new Mock <ESFA.DC.Logging.Interfaces.ILogger>();

            keyValuePersistenceService.Setup(x => x.ContainsAsync("1_1_1", default(CancellationToken))).Returns(Task.FromResult(false));

            var mockKeyValuePersistenceServices = new Mock <IIndex <JobType, IKeyValuePersistenceService> >();

            mockKeyValuePersistenceServices.SetupGet(x => x[JobType.IlrSubmission])
            .Returns(keyValuePersistenceService.Object);

            var controller = new ValidationResultsController(mockKeyValuePersistenceServices.Object, logger.Object, new Mock <IFileUploadJobManager>().Object, new Mock <IDateTimeProvider>().Object);
            var result     = controller.Get(1, 1).Result;

            result.Should().BeAssignableTo <BadRequestResult>();
        }