Ejemplo n.º 1
0
        public void Setup()
        {
            // oc
            _oc = Substitute.For <IOrderCloudClient>();
            _oc.IntegrationEvents.GetWorksheetAsync <HSOrderWorksheet>(OrderDirection.Incoming, mockOrderID)
            .Returns(Task.FromResult(new HSOrderWorksheet {
                Order = new Models.HSOrder {
                    ID = mockOrderID
                }
            }));
            _oc.Payments.CreateAsync <HSPayment>(OrderDirection.Incoming, mockOrderID, Arg.Any <HSPayment>())
            .Returns(Task.FromResult(PaymentMocks.CCPayment(creditcard1, 20)));

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

            // ccCommand
            _ccCommand = Substitute.For <ICreditCardCommand>();
            _ccCommand.VoidTransactionAsync(Arg.Any <HSPayment>(), Arg.Any <HSOrder>(), mockUserToken)
            .Returns(Task.FromResult(0));

            _sut = new PaymentCommand(_oc, _orderCalc, _ccCommand);
        }
Ejemplo n.º 2
0
 public PaymentCommand(
     IOrderCloudClient oc,
     IOrderCalcService orderCalc,
     ICreditCardCommand ccCommand
     )
 {
     _oc        = oc;
     _orderCalc = orderCalc;
     _ccCommand = ccCommand;
 }
Ejemplo n.º 3
0
 public CreditCardCommand(
     IOrderCloudIntegrationsCardConnectService card,
     IOrderCloudClient oc,
     IOrderCalcService orderCalc,
     IHSExchangeRatesService hsExchangeRates,
     ISupportAlertService supportAlerts,
     AppSettings settings
     )
 {
     _cardConnect     = card;
     _oc              = oc;
     _orderCalc       = orderCalc;
     _hsExchangeRates = hsExchangeRates;
     _supportAlerts   = supportAlerts;
     _settings        = settings;
 }
Ejemplo n.º 4
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);
        }