コード例 #1
0
        public async Task CreateCardPayment_ReturnsCreatedAtRouteResultOfTypeResponseCardPaymentDto()
        {
            // arrange
            var requestCardPaymentDto = TestData.GetRequestCardPaymentDto();

            _mockPaymentValidationService.Setup(repo => repo.ValidateAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <int>())).Returns(Task.FromResult <ValidationData>(TestData.GetValidationData()));
            _mockMapper.Setup(m => m.Map <RequestCardPaymentDto, RequestExternalPaymentDto>(It.IsAny <RequestCardPaymentDto>())).Returns(TestData.GetRequestExternalPaymentDto());
            _mockPaymentService.Setup(repo => repo.PayThroughAcquiringBankAsync(It.IsAny <RequestExternalPaymentDto>())).Returns(Task.FromResult <ResponseExternalPaymentDto>(TestData.GetResponseExternalPaymentDto()));
            _mockPaymentService.Setup(repo => repo.PersistPaymentRequestToDatabase(It.IsAny <RequestCardPaymentDto>(), It.IsAny <ResponseExternalPaymentDto>(), It.IsAny <ValidationData>())).Returns(Task.FromResult <ResponseCardPaymentDto>(TestData.GetResponseCardPaymentDto()));

            // act
            var result = await _paymentsController.CreateCardPayment(requestCardPaymentDto);

            // assert
            var objectResult = Assert.IsType <CreatedAtRouteResult>(result);

            Assert.IsType <ResponseCardPaymentDto>(objectResult.Value);
        }