public IPurchaseOrder CreateFakePurchaseOrder() { var form = new InMemoryOrderForm { Payments = { new InMemoryPayment { BillingAddress = new InMemoryOrderAddress(), PaymentMethodName = "CashOnDelivery" } } }; form.Shipments.First().ShippingAddress = new InMemoryOrderAddress(); var market = _currentMarket.GetCurrentMarket(); var purchaseOrder = new InMemoryPurchaseOrder { Currency = market.DefaultCurrency, MarketId = market.MarketId, MarketName = market.MarketName, PricesIncludeTax = market.PricesIncludeTax, OrderLink = new OrderReference(0, string.Empty, Guid.Empty, typeof(IPurchaseOrder)) }; purchaseOrder.Forms.Add(form); return(purchaseOrder); }
public IPurchaseOrder CreateFakePurchaseOrder() { var form = new InMemoryOrderForm { Payments = { new InMemoryPayment { BillingAddress = new InMemoryOrderAddress(), PaymentMethodName = "CashOnDelivery" } } }; form.Shipments.First().ShippingAddress = new InMemoryOrderAddress(); var purchaseOrder = new InMemoryPurchaseOrder { Forms = new[] { form }, Currency = _currentMarket.GetCurrentMarket().DefaultCurrency, Market = _currentMarket.GetCurrentMarket(), OrderLink = new OrderReference(0, string.Empty, Guid.Empty, typeof(IPurchaseOrder)) }; return(purchaseOrder); }
public IPurchaseOrder CreateFakePurchaseOrder() { var form = new InMemoryOrderForm { Payments = { new InMemoryPayment { BillingAddress = new InMemoryOrderAddress(), PaymentMethodName = "CashOnDelivery" } } }; form.Shipments.First().ShippingAddress = new InMemoryOrderAddress(); var purchaseOrder = new InMemoryPurchaseOrder { Forms = new[] { form }, Currency = _currentMarket.GetCurrentMarket().DefaultCurrency, Market = _currentMarket.GetCurrentMarket(), OrderLink = new OrderReference(0, string.Empty, Guid.Empty, typeof(IPurchaseOrder)) }; return purchaseOrder; }
public CheckoutControllerTests() { _controllerExceptionHandlerMock = new Mock <ControllerExceptionHandler>(); _requestContextMock = new Mock <RequestContext>(); _httpRequestBaseMock = new Mock <HttpRequestBase>(); _httpContextBaseMock = new Mock <HttpContextBase>(); _contentRepositoryMock = new Mock <IContentRepository>(); _mailServiceMock = new Mock <IMailService>(); _localizationService = new MemoryLocalizationService(); _currencyServiceMock = new Mock <ICurrencyService>(); _customerContextFacadeMock = new Mock <CustomerContextFacade>(); _orderRepositoryMock = new Mock <IOrderRepository>(); _orderGroupCalculatorMock = new Mock <IOrderGroupCalculator>(); _paymentProcessorMock = new Mock <IPaymentProcessor>(); _promotionEngineMock = new Mock <IPromotionEngine>(); _cartServiceMock = new Mock <ICartService>(); _addressBookServiceMock = new Mock <IAddressBookService>(); _orderSummaryViewModelFactoryMock = new Mock <OrderSummaryViewModelFactory>(null, null, null, null); _checkoutViewModelFactoryMock = new Mock <CheckoutViewModelFactory>(null, null, null, null, null, null, null, null); _orderFactoryMock = new Mock <IOrderFactory>(); _cart = new FakeCart(null, new Currency("USD")); _exceptionContext = new ExceptionContext { HttpContext = _httpContextBaseMock.Object, RequestContext = _requestContextMock.Object }; var customerId = Guid.NewGuid(); var orderReference = new OrderReference(1, "PurchaseOrder", customerId, typeof(InMemoryPurchaseOrder)); var purchaseOrder = new InMemoryPurchaseOrder { Name = orderReference.Name, Currency = _cart.Currency, CustomerId = customerId, OrderLink = orderReference }; var paymentMock = new Mock <ICreditCardPayment>(); paymentMock.SetupGet(x => x.CreditCardNumber).Returns("423465654"); paymentMock.SetupGet(x => x.Status).Returns(PaymentStatus.Pending.ToString()); _httpContextBaseMock.Setup(x => x.Request).Returns(_httpRequestBaseMock.Object); _subject = new CheckoutControllerForTest(_contentRepositoryMock.Object, _mailServiceMock.Object, _localizationService, _currencyServiceMock.Object, _controllerExceptionHandlerMock.Object, _customerContextFacadeMock.Object, _orderRepositoryMock.Object, _checkoutViewModelFactoryMock.Object, _orderGroupCalculatorMock.Object, _paymentProcessorMock.Object, _promotionEngineMock.Object, _cartServiceMock.Object, _addressBookServiceMock.Object, _orderSummaryViewModelFactoryMock.Object, _orderFactoryMock.Object); _checkoutViewModelFactoryMock .Setup(x => x.CreateCheckoutViewModel(It.IsAny <ICart>(), It.IsAny <CheckoutPage>(), It.IsAny <PaymentMethodViewModel <PaymentMethodBase> >())) .Returns((ICart cart, CheckoutPage currentPage, PaymentMethodViewModel <PaymentMethodBase> paymentMethodViewModel) => CreateCheckoutViewModel(currentPage, paymentMethodViewModel)); _orderFactoryMock.Setup(x => x.CreateCardPayment()).Returns(paymentMock.Object); _orderRepositoryMock.Setup(x => x.SaveAsPurchaseOrder(_cart)).Returns(orderReference); _orderRepositoryMock.Setup(x => x.Load <IPurchaseOrder>(orderReference.OrderGroupId)).Returns(purchaseOrder); _contentRepositoryMock.Setup(x => x.Get <StartPage>(It.IsAny <ContentReference>())).Returns(new StartPage()); _contentRepositoryMock.Setup(x => x.GetChildren <OrderConfirmationPage>(It.IsAny <ContentReference>())).Returns(new[] { new OrderConfirmationPageForTest() { Language = new CultureInfo("en-US") } }); _cartServiceMock.Setup(x => x.LoadCart(It.IsAny <string>())).Returns(_cart); _cartServiceMock.Setup(x => x.ValidateCart(It.IsAny <ICart>())).Returns(new Dictionary <ILineItem, List <ValidationIssue> >()); _cartServiceMock.Setup(x => x.RequestInventory(It.IsAny <ICart>())).Returns(new Dictionary <ILineItem, List <ValidationIssue> >()); _cart.AddLineItem(new InMemoryLineItem(), _orderFactoryMock.Object); }
public CheckoutControllerTests() { _controllerExceptionHandlerMock = new Mock<ControllerExceptionHandler>(); _requestContextMock = new Mock<RequestContext>(); _httpRequestBaseMock = new Mock<HttpRequestBase>(); _httpContextBaseMock = new Mock<HttpContextBase>(); _contentRepositoryMock = new Mock<IContentRepository>(); _mailServiceMock = new Mock<IMailService>(); _localizationService = new MemoryLocalizationService(); _currencyServiceMock = new Mock<ICurrencyService>(); _customerContextFacadeMock = new Mock<CustomerContextFacade>(); _orderRepositoryMock = new Mock<IOrderRepository>(); _orderGroupCalculatorMock = new Mock<IOrderGroupCalculator>(); _paymentProcessorMock = new Mock<IPaymentProcessor>(); _promotionEngineMock = new Mock<IPromotionEngine>(); _cartServiceMock = new Mock<ICartService>(); _addressBookServiceMock = new Mock<IAddressBookService>(); _orderSummaryViewModelFactoryMock = new Mock<OrderSummaryViewModelFactory>(null, null, null, null); _checkoutViewModelFactoryMock = new Mock<CheckoutViewModelFactory>(null, null, null, null, null, null, null, null); _orderFactoryMock = new Mock<IOrderFactory>(); _cart = new FakeCart(null, new Currency("USD")); _exceptionContext = new ExceptionContext { HttpContext = _httpContextBaseMock.Object, RequestContext = _requestContextMock.Object }; var customerId = Guid.NewGuid(); var orderReference = new OrderReference(1, "PurchaseOrder", customerId, typeof(InMemoryPurchaseOrder)); var purchaseOrder = new InMemoryPurchaseOrder { Name = orderReference.Name, Currency = _cart.Currency, CustomerId = customerId, OrderLink = orderReference }; var paymentMock = new Mock<ICreditCardPayment>(); paymentMock.SetupGet(x => x.CreditCardNumber).Returns("423465654"); paymentMock.SetupGet(x => x.Status).Returns(PaymentStatus.Pending.ToString()); _httpContextBaseMock.Setup(x => x.Request).Returns(_httpRequestBaseMock.Object); _subject = new CheckoutControllerForTest(_contentRepositoryMock.Object, _mailServiceMock.Object, _localizationService, _currencyServiceMock.Object, _controllerExceptionHandlerMock.Object, _customerContextFacadeMock.Object, _orderRepositoryMock.Object, _checkoutViewModelFactoryMock.Object, _orderGroupCalculatorMock.Object, _paymentProcessorMock.Object, _promotionEngineMock.Object, _cartServiceMock.Object, _addressBookServiceMock.Object, _orderSummaryViewModelFactoryMock.Object, _orderFactoryMock.Object); _checkoutViewModelFactoryMock .Setup(x => x.CreateCheckoutViewModel(It.IsAny<ICart>(), It.IsAny<CheckoutPage>(), It.IsAny<PaymentMethodViewModel<PaymentMethodBase>>())) .Returns((ICart cart, CheckoutPage currentPage, PaymentMethodViewModel<PaymentMethodBase> paymentMethodViewModel) => CreateCheckoutViewModel(currentPage, paymentMethodViewModel)); _orderFactoryMock.Setup(x => x.CreateCardPayment()).Returns(paymentMock.Object); _orderRepositoryMock.Setup(x => x.SaveAsPurchaseOrder(_cart)).Returns(orderReference); _orderRepositoryMock.Setup(x => x.Load<IPurchaseOrder>(orderReference.OrderGroupId)).Returns(purchaseOrder); _contentRepositoryMock.Setup(x => x.Get<StartPage>(It.IsAny<ContentReference>())).Returns(new StartPage()); _contentRepositoryMock.Setup(x => x.GetChildren<OrderConfirmationPage>(It.IsAny<ContentReference>())).Returns(new[] { new OrderConfirmationPageForTest() { Language = new CultureInfo("en-US") } }); _cartServiceMock.Setup(x => x.LoadCart(It.IsAny<string>())).Returns(_cart); _cartServiceMock.Setup(x => x.ValidateCart(It.IsAny<ICart>())).Returns(new Dictionary<ILineItem, List<ValidationIssue>>()); _cartServiceMock.Setup(x => x.RequestInventory(It.IsAny<ICart>())).Returns(new Dictionary<ILineItem, List<ValidationIssue>>()); _cart.AddLineItem(new InMemoryLineItem(), _orderFactoryMock.Object); }