示例#1
0
        public async Task <IActionResult> ConfirmApplication(ConfirmApplicationRequest request)
        {
            try
            {
                await _mediator.Send(new ConfirmApplicationCommand(request.ApplicationId, request.AccountId, request.DateSubmitted, request.SubmittedByEmail, request.SubmittedByName));

                return(new OkResult());
            }
            catch (UlnAlreadySubmittedException)
            {
                return(Conflict("Application contains a ULN which has already been submitted"));
            }
        }
        public async Task Then_Conflict_is_returned_when_uln_already_submitted(
            long accountId,
            ConfirmApplicationRequest request,
            CreateAccountLegalEntityCommandResult mediatorResult,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] ApplicationController controller)
        {
            mockMediator
            .Setup(mediator => mediator.Send(
                       It.Is <ConfirmApplicationCommand>(c =>
                                                         c.AccountId.Equals(request.AccountId) &&
                                                         c.ApplicationId.Equals(request.ApplicationId) &&
                                                         c.DateSubmitted.Equals(request.DateSubmitted)),
                       It.IsAny <CancellationToken>()))
            .ThrowsAsync(new UlnAlreadySubmittedException());

            var controllerResult = await controller.ConfirmApplication(request) as ConflictObjectResult;

            Assert.IsNotNull(controllerResult);
        }
        public async Task Then_ConfirmApplicationCommand_is_handled(
            long accountId,
            ConfirmApplicationRequest request,
            CreateAccountLegalEntityCommandResult mediatorResult,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] ApplicationController controller)
        {
            mockMediator
            .Setup(mediator => mediator.Send(
                       It.Is <ConfirmApplicationCommand>(c =>
                                                         c.AccountId.Equals(request.AccountId) &&
                                                         c.ApplicationId.Equals(request.ApplicationId) &&
                                                         c.DateSubmitted.Equals(request.DateSubmitted)),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(Unit.Value);

            var controllerResult = await controller.ConfirmApplication(request) as StatusCodeResult;

            Assert.IsNotNull(controllerResult);
            controllerResult.StatusCode.Should().Be((int)HttpStatusCode.OK);
        }
        public async Task <IActionResult> ConfirmApplication(ConfirmApplicationRequest request)
        {
            await _mediator.Send(new ConfirmApplicationCommand(request.ApplicationId, request.AccountId, request.DateSubmitted, request.SubmittedByEmail, request.SubmittedByName));

            return(new OkResult());
        }