public void Then_The_Post_Url_Is_Correctly_Built(RevertPaymentsRequest data)
        {
            var actual = new PostRevertPaymentsRequest(data);

            actual.PostUrl.Should().Be($"revert-payments");
            actual.Data.Should().BeEquivalentTo(data);
        }
예제 #2
0
        public async Task <IActionResult> RevertPayments([FromBody] RevertPaymentsRequest request)
        {
            try
            {
                await _mediator.Send(new RevertPaymentsCommand(request), CancellationToken.None);

                return(Ok());
            }
            catch (HttpRequestContentException e)
            {
                return(new BadRequestObjectResult(e.ErrorContent));
            }
        }
예제 #3
0
        public async Task RevertPayments(RevertPaymentsRequest revertPaymentsRequest)
        {
            var postRequest = new PostRevertPaymentsRequest(revertPaymentsRequest);

            var response = await _client.PostWithResponseCode <PostRevertPaymentsRequest>(postRequest);

            if (ApiResponseErrorChecking.IsSuccessStatusCode(response.StatusCode))
            {
                return;
            }

            throw new HttpRequestContentException($"Response status code does not indicate success: {(int)response.StatusCode} ({response.StatusCode})", response.StatusCode, response.ErrorContent);
        }
        public async Task Then_Sends_Revert_Payments_Command_To_Mediator(
            RevertPaymentsRequest request,
            [Frozen] Mock <IMediator> mockMediator,
            [Greedy] RevertPaymentsController controller)
        {
            var controllerResult = await controller.RevertPayments(request) as OkResult;

            mockMediator
            .Verify(mediator => mediator.Send(
                        It.Is <RevertPaymentsCommand>(c =>
                                                      c.RevertPaymentsRequest.Equals(request)),
                        It.IsAny <CancellationToken>()));

            Assert.IsNotNull(controllerResult);
        }
예제 #5
0
        public async Task Then_The_Api_Is_Called_With_The_Revert_Payments_Request(
            RevertPaymentsRequest request,
            [Frozen] Mock <IEmployerIncentivesApiClient <EmployerIncentivesConfiguration> > client,
            EmployerIncentivesService service
            )
        {
            client.Setup(x => x.PostWithResponseCode <PostRevertPaymentsRequest>(
                             It.Is <PostRevertPaymentsRequest>(
                                 c => c.PostUrl.Contains("revert-payments")
                                 ))).ReturnsAsync(new ApiResponse <PostRevertPaymentsRequest>(null, HttpStatusCode.NoContent, ""));

            await service.RevertPayments(request);

            client.Verify(x => x.PostWithResponseCode <PostRevertPaymentsRequest>(
                              It.Is <PostRevertPaymentsRequest>(c => c.PostUrl.Contains("revert-payments")
                                                                )), Times.Once);
        }
예제 #6
0
 public RevertPaymentsCommand(RevertPaymentsRequest revertPaymentsRequest)
 {
     RevertPaymentsRequest = revertPaymentsRequest;
 }