コード例 #1
0
        public PaymentReadModel RetrievePayment(RetrievePaymentRequest paymentRequest, string correlationId)
        {
            _logger.LogInformation($"retrieving payment payment with correlationId {correlationId} locally");

            var payment = _databaseWrapper.Get(paymentRequest);

            _logger.LogWarning($"Payment with Id {paymentRequest.PaymentId} && merchant Id {paymentRequest.MerchantId} not found!");

            if (payment == null)
            {
                return(null);
            }

            return(PaymentReadModel.BuildPaymentReadModel(payment));
        }
コード例 #2
0
        public void GivenARetrievePaymentRequest_WhenRetrievingPayment_ShouldCallRepository()
        {
            // given
            var payment =
                PaymentReadModel.BuildPaymentReadModel(_fixture.Create <PaymentInformation>());

            var paymentRequest = _fixture.Create <Checkout.Services.Models.RetrievePaymentRequest>();

            _mockPaymentRepository.Setup(x => x.RetrievePayment(It.IsAny <RetrievePaymentRequest>(), paymentRequest.CorrelationId))
            .Returns(payment);

            // when
            _sut.RetrievePayment(paymentRequest);

            // then
            _mockPaymentRepository.Verify(x => x.RetrievePayment(It.Is <RetrievePaymentRequest>(y => y.PaymentId == paymentRequest.PaymentId &&
                                                                                                y.MerchantId == paymentRequest.MerchantId), paymentRequest.CorrelationId));
        }