public async Task QueueBatchUploadValidationCreatesBatchUploadValidationJobForSuppliedBatchDetails() { Reference user = NewUser(); string correlationId = NewRandomString(); BatchUploadValidationRequest request = NewBatchUploadValidationRequest(_ => _.WithBatchId(NewRandomString()) .WithFundingPeriodId(NewRandomString()) .WithFundingStreamId(NewRandomString()) .WithSpecificationId(NewRandomString())); Job job = NewJob(); GivenTheValidationResultForTheRequest(request, NewValidationResult()); AndTheJob(request, user, correlationId, job); OkObjectResult result = await WhenTheBatchUploadValidationIsQueued(request, user, correlationId) as OkObjectResult; result? .Value .Should() .BeEquivalentTo(new { JobId = job.Id }); }
private void TheRequestHasTheValidationFailures(BatchUploadValidationRequest request, params string[] properties) { ValidationResult result = WhenTheRequestIsValidated(request); result.Errors.Select(_ => _.PropertyName) .Should() .BeEquivalentTo(properties); }
public async Task QueueBatchUploadValidation() { BatchUploadValidationRequest uploadValidationRequest = new BatchUploadValidationRequest(); await AssertPostRequest("publishedproviderbatch/validate", uploadValidationRequest, new JobCreationResponse { JobId = NewRandomString() }, () => _client.QueueBatchUploadValidation(uploadValidationRequest)); }
public async Task QueueBatchUploadValidationReturnsBadRequestIfRequestFailsValidation() { BatchUploadValidationRequest request = NewBatchUploadValidationRequest(); ValidationResult validationResult = NewValidationResult(_ => _.WithValidationFailures(NewValidationFailure(), NewValidationFailure())); GivenTheValidationResultForTheRequest(request, validationResult); BadRequestObjectResult badRequest = await WhenTheBatchUploadValidationIsQueued(request, null, null) as BadRequestObjectResult; badRequest .Should() .NotBeNull(); }
public async Task <IActionResult> ValidateBatch([FromBody] BatchUploadValidationRequest validationRequest) => await _validationService.QueueBatchUploadValidation(validationRequest, Request.GetUser(), Request.GetCorrelationId());
private ValidationResult WhenTheRequestIsValidated(BatchUploadValidationRequest request) => new BatchUploadValidationRequestValidation().Validate(request);