public MultiShipmentViewModelFactoryTests()
        {
            var market = new MarketImpl(new MarketId(Currency.USD));

            _cart = new FakeCart(market, Currency.USD);
            _cart.Forms.Single().Shipments.Single().LineItems.Add(new InMemoryLineItem());
            _cart.Forms.Single().CouponCodes.Add("couponcode");

            var addressBookServiceMock = new Mock <IAddressBookService>();

            addressBookServiceMock.Setup(x => x.List()).Returns(() => new List <AddressModel> {
                new AddressModel {
                    AddressId = "addressid"
                }
            });
            var preferredBillingAddress = CustomerAddress.CreateInstance();

            preferredBillingAddress.Name = "preferredBillingAddress";
            addressBookServiceMock.Setup(x => x.GetPreferredBillingAddress()).Returns(preferredBillingAddress);
            addressBookServiceMock.Setup(x => x.UseBillingAddressForShipment()).Returns(true);

            _startPage = new StartPage();
            var contentLoaderMock = new Mock <IContentLoader>();

            contentLoaderMock.Setup(x => x.Get <StartPage>(It.IsAny <PageReference>())).Returns(_startPage);

            var urlResolverMock = new Mock <UrlResolver>();

            var httpcontextMock = new Mock <HttpContextBase>();
            var requestMock     = new Mock <HttpRequestBase>();

            requestMock.Setup(x => x.Url).Returns(new Uri("http://site.com"));
            requestMock.Setup(x => x.UrlReferrer).Returns(new Uri("http://site.com"));
            httpcontextMock.Setup(x => x.Request).Returns(requestMock.Object);

            var marketServiceMock = new Mock <IMarketService>();

            marketServiceMock.Setup(x => x.GetMarket(It.IsAny <MarketId>())).Returns(market);
            var shipmentViewModelFactoryMock = new Mock <ShipmentViewModelFactory>(null, null, null, null, null, marketServiceMock.Object);

            shipmentViewModelFactoryMock.Setup(x => x.CreateShipmentsViewModel(It.IsAny <ICart>())).Returns(() => new[]
            {
                new ShipmentViewModel {
                    CartItems = new[]
                    {
                        new CartItemViewModel {
                            Quantity = 1
                        }
                    }
                }
            });

            _subject = new MultiShipmentViewModelFactory(
                new MemoryLocalizationService(),
                addressBookServiceMock.Object,
                contentLoaderMock.Object,
                urlResolverMock.Object,
                (() => httpcontextMock.Object),
                shipmentViewModelFactoryMock.Object);
        }
예제 #2
0
 public CheckoutController(
     IOrderRepository orderRepository,
     CheckoutViewModelFactory checkoutViewModelFactory,
     ICartService cartService,
     OrderSummaryViewModelFactory orderSummaryViewModelFactory,
     ICommerceTrackingService recommendationService,
     CheckoutService checkoutService,
     UrlHelper urlHelper,
     ApplicationSignInManager <SiteUser> applicationSignInManager,
     LocalizationService localizationService,
     IAddressBookService addressBookService,
     MultiShipmentViewModelFactory multiShipmentViewModelFactory,
     IOrderGroupFactory orderGroupFactory,
     IContentLoader contentLoader,
     UrlResolver urlResolver,
     ICustomerService customerContext,
     IOrganizationService organizationService)
 {
     _orderRepository          = orderRepository;
     _checkoutViewModelFactory = checkoutViewModelFactory;
     _cartService = cartService;
     _orderSummaryViewModelFactory = orderSummaryViewModelFactory;
     _recommendationService        = recommendationService;
     _checkoutService               = checkoutService;
     _urlHelper                     = urlHelper;
     _applicationSignInManager      = applicationSignInManager;
     _localizationService           = localizationService;
     _addressBookService            = addressBookService;
     _multiShipmentViewModelFactory = multiShipmentViewModelFactory;
     _orderGroupFactory             = orderGroupFactory;
     _contentLoader                 = contentLoader;
     _urlResolver                   = urlResolver;
     _customerContext               = customerContext;
     _organizationService           = organizationService;
 }
 public MultiShipmentController(
     IOrderRepository orderRepository,
     MultiShipmentViewModelFactory checkoutViewModelFactory,
     ICartService cartService,
     IAddressBookService addressBookService,
     LocalizationService localizationService)
 {
     _orderRepository          = orderRepository;
     _checkoutViewModelFactory = checkoutViewModelFactory;
     _cartService         = cartService;
     _addressBookService  = addressBookService;
     _localizationService = localizationService;
 }