public async Task Then_The_Request_Is_Handled_And_Ok_Result_Returned( RegisterCheckRequest request, RegisterCheckResponse response, [Frozen] Mock <IMediator> mockMediator, [Greedy] EmploymentCheckController controller) { mockMediator .Setup(mediator => mediator.Send( It.Is <RegisterCheckCommand>(c => c.CorrelationId.Equals(request.CorrelationId) && c.ApprenticeshipAccountId.Equals(request.ApprenticeshipAccountId) && c.ApprenticeshipId.Equals(request.ApprenticeshipId) && c.CheckType.Equals(request.CheckType) && c.MaxDate.Equals(request.MaxDate) && c.MinDate.Equals(request.MinDate) && c.Uln.Equals(request.Uln) ), It.IsAny <CancellationToken>())) .ReturnsAsync(response); var controllerResult = await controller.RegisterCheck(request) as OkObjectResult; Assert.IsNotNull(controllerResult); controllerResult.Value.Should().Be(response); }
public void GivenTheCallerWantsToRegisterAnEmploymentCheck() { _request = new RegisterCheckRequest { CorrelationId = System.Guid.NewGuid(), ApprenticeshipAccountId = 123, ApprenticeshipId = 456, CheckType = "1stCheck", MaxDate = DateTime.Now, MinDate = DateTime.Now.AddDays(-7), Uln = 1234356 }; }
public async Task Then_If_Validation_Error_Then_Request_Error_Response_Is_Returned( RegisterCheckRequest request, [Frozen] Mock <IMediator> mockMediator, [Greedy] EmploymentCheckController controller) { mockMediator.Setup(x => x.Send(It.IsAny <RegisterCheckCommand>(), CancellationToken.None)).ThrowsAsync(new HttpRequestContentException("error message", HttpStatusCode.BadRequest, "error")); var actual = await controller.RegisterCheck(request) as ObjectResult; Assert.IsNotNull(actual); actual.StatusCode.Should().Be((int)HttpStatusCode.BadRequest); actual.Value.Should().Be("error"); }
public async Task <IActionResult> RegisterCheck(RegisterCheckRequest request) { try { var response = await _mediator.Send(new RegisterCheckCommand { CorrelationId = request.CorrelationId, CheckType = request.CheckType, Uln = request.Uln, ApprenticeshipAccountId = request.ApprenticeshipAccountId, ApprenticeshipId = request.ApprenticeshipId, MinDate = request.MinDate, MaxDate = request.MaxDate }); return(Ok(response)); } catch (HttpRequestContentException ex) { return(StatusCode((int)ex.StatusCode, ex.ErrorContent)); } }