Exemple #1
0
        public void Setup()
        {
            _oc       = Substitute.For <IOrderCloudClient>();
            _settings = Substitute.For <AppSettings>();
            _settings.CardConnectSettings = new OrderCloudIntegrationsCardConnectConfig
            {
                UsdMerchantID = "mockUsdMerchantID",
                CadMerchantID = "mockCadMerchantID",
                EurMerchantID = "mockEurMerchantID"
            };
            _settings.OrderCloudSettings = new OrderCloudSettings
            {
                IncrementorPrefix = "SEB"
            };
            _card = Substitute.For <ICreditCardCommand>();
            _card.AuthorizePayment(Arg.Any <OrderCloudIntegrationsCreditCardPayment>(), "mockUserToken", Arg.Any <string>())
            .Returns(Task.FromResult(new Payment {
            }));

            _oc.Orders.PatchAsync(OrderDirection.Incoming, "mockOrderID", Arg.Any <PartialOrder>()).Returns(Task.FromResult(new Order {
                ID = "SEB12345"
            }));
            _oc.AuthenticateAsync().Returns(Task.FromResult(new TokenResponse {
                AccessToken = "mockToken"
            }));
            _oc.Orders.SubmitAsync <HSOrder>(Arg.Any <OrderDirection>(), Arg.Any <string>(), Arg.Any <string>()).Returns(Task.FromResult(new HSOrder {
                ID = "submittedorderid"
            }));
            _sut = new OrderSubmitCommand(_oc, _settings, _card); // sut is subject under test
        }
        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);
        }
Exemple #3
0
 public PaymentCommand(
     IOrderCloudClient oc,
     ICreditCardCommand ccCommand
     )
 {
     _oc        = oc;
     _ccCommand = ccCommand;
 }
 public PaymentCommand(
     IOrderCloudClient oc,
     IOrderCalcService orderCalc,
     ICreditCardCommand ccCommand
     )
 {
     _oc        = oc;
     _orderCalc = orderCalc;
     _ccCommand = ccCommand;
 }
Exemple #5
0
 public CheckoutCommand(
     IOrderCloudClient oc,
     AppSettings settings,
     IAzureServiceBus serviceBus,
     ITaxCalculator taxCalculator,
     IShippingRatesCalculator shippingCalculator,
     ICreditCardCommand creditCardCommand)
 {
     _serviceBus         = serviceBus;
     _oc                 = oc;
     _settings           = settings;
     _taxCalculator      = taxCalculator;
     _shippingCalculator = shippingCalculator;
     _creditCardCommand  = creditCardCommand;
 }
Exemple #6
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);
        }
Exemple #7
0
 public OrderSubmitCommand(IOrderCloudClient oc, AppSettings settings, ICreditCardCommand card)
 {
     _oc       = oc;
     _settings = settings;
     _card     = card;
 }
 public CreditCardController(AppSettings settings, ICreditCardCommand card) : base(settings)
 {
     _card = card;
 }
 public MeCreditCardAuthorizationController(AppSettings settings, ICreditCardCommand card) : base(settings)
 {
     _card = card;
 }
 public MePaymentController(AppSettings settings, ICreditCardCommand card) : base(settings)
 {
     _card     = card;
     _settings = settings;
 }
 public CreditCardController(CreditCardCommand creditCardCommand, IOrderCloudClient oc)
 {
     _creditCardCommand = creditCardCommand;
     _oc = oc;
 }
 public CreditCardController(ICreditCardCommand card)
 {
     _card = card;
 }
 public MeCreditCardAuthorizationController(ICreditCardCommand card)
 {
     _card = card;
 }