コード例 #1
0
 public CreditCardCommand(
     IOrderCloudIntegrationsCardConnectService card,
     IOrderCloudClient oc,
     IHSExchangeRatesService hsExchangeRates,
     ISupportAlertService supportAlerts,
     AppSettings settings
     )
 {
     _cardConnect     = card;
     _oc              = oc;
     _hsExchangeRates = hsExchangeRates;
     _supportAlerts   = supportAlerts;
     _settings        = settings;
 }
コード例 #2
0
        public void Setup()
        {
            _cardConnect = Substitute.For <IOrderCloudIntegrationsCardConnectService>();
            _cardConnect.VoidAuthorization(Arg.Is <CardConnectVoidRequest>(r => r.merchid == merchantID))
            .Returns(Task.FromResult(new CardConnectVoidResponse {
            }));
            _cardConnect.AuthWithoutCapture(Arg.Any <CardConnectAuthorizationRequest>())
            .Returns(Task.FromResult(new CardConnectAuthorizationResponse {
                authcode = "REVERS"
            }));

            _oc = Substitute.For <IOrderCloudClient>();
            _oc.Me.GetCreditCardAsync <CardConnectBuyerCreditCard>(creditCardID, userToken)
            .Returns(MockCreditCard());
            _oc.IntegrationEvents.GetWorksheetAsync <HSOrderWorksheet>(OrderDirection.Incoming, orderID)
            .Returns(Task.FromResult(new HSOrderWorksheet {
                Order = new HSOrder {
                    ID = orderID
                }
            }));
            _oc.Payments.CreateTransactionAsync <HSPayment>(OrderDirection.Incoming, orderID, Arg.Any <string>(), Arg.Any <PaymentTransaction>())
            .Returns(Task.FromResult(new HSPayment {
            }));
            _oc.Payments.PatchAsync <HSPayment>(OrderDirection.Incoming, orderID, Arg.Any <string>(), Arg.Any <PartialPayment>())
            .Returns(Task.FromResult(new HSPayment {
            }));

            _orderCalc = Substitute.For <IOrderCalcService>();
            _orderCalc.GetCreditCardTotal(Arg.Any <HSOrderWorksheet>())
            .Returns(ccTotal);

            _hsExchangeRates = Substitute.For <IHSExchangeRatesService>();
            _hsExchangeRates.GetCurrencyForUser(userToken)
            .Returns(Task.FromResult(currency));

            _supportAlerts = Substitute.For <ISupportAlertService>();
            _settings      = Substitute.For <AppSettings>();
            _settings.CardConnectSettings.CadMerchantID = merchantID;

            _sut = new CreditCardCommand(_cardConnect, _oc, _orderCalc, _hsExchangeRates, _supportAlerts, _settings);
        }