Ejemplo n.º 1
0
        public void CanAddBasketItem()
        {
            //Test Set up
            IRepository <Basket>   baskets   = new MockContext <Basket>();
            IRepository <Product>  products  = new MockContext <Product>();
            IRepository <Order>    orders    = new MockContext <Order>();
            IRepository <Customer> customers = new MockContext <Customer>();

            var httpContext = new MockHttpContext();

            IBasketService basketService = new BasketServices(products, baskets);
            IOrderService  orderService  = new OrderService(orders);
            var            controller    = new BasketController(basketService, orderService, customers);

            controller.ControllerContext = new System.Web.Mvc.ControllerContext(httpContext, new System.Web.Routing.RouteData(), controller);
            //basketService.AddToBasket(httpContext, "1");

            // Test Actions
            controller.AddToBasket("1");

            Basket basket = baskets.Collection().FirstOrDefault();

            // Results
            Assert.IsNotNull(basket);
            Assert.AreEqual(1, basket.BasketItems.Count);
            Assert.AreEqual("1", basket.BasketItems.ToList().FirstOrDefault().ProductId);
        }
Ejemplo n.º 2
0
        protected override async Task OnInitializedAsync()
        {
            Products = new List <ProductViewModel>();
            var result = await BasketServices.GetAsync();

            Products = result.ToList();
        }
Ejemplo n.º 3
0
        protected override async Task OnInitializedAsync()
        {
            BasketItems = new List <BasketItem>();
            _Product    = new ProductViewModel();

            var result = await BasketServices.GetAsync();

            _Product = result.Where(p => p.Id == ProductId).FirstOrDefault();
        }
Ejemplo n.º 4
0
        protected override async Task OnInitializedAsync()
        {
            BasketItems = new List <BasketItem>();

            ////*****************************************************************************
            IList <MenuViewModel> menu = new List <MenuViewModel>();

            Products = (await BasketServices.GetAsync()).ToList();

            //*****************************************************************************
        }
Ejemplo n.º 5
0
        public void CanGetSummaryViewModel()
        {
            //Test Set up
            IRepository <Basket>   baskets   = new MockContext <Basket>();
            IRepository <Product>  products  = new MockContext <Product>();
            IRepository <Order>    orders    = new MockContext <Order>();
            IRepository <Customer> customers = new MockContext <Customer>();

            products.Insert(new Product()
            {
                Id = "1", Price = 10.00m
            });
            products.Insert(new Product()
            {
                Id = "2", Price = 5.00m
            });

            Basket basket = new Basket();

            basket.BasketItems.Add(new BasketItem()
            {
                ProductId = "1", Quantity = 2
            });
            basket.BasketItems.Add(new BasketItem()
            {
                ProductId = "2", Quantity = 1
            });
            baskets.Insert(basket);

            IBasketService basketService = new BasketServices(products, baskets);
            IOrderService  orderService  = new OrderService(orders);

            var controller  = new BasketController(basketService, orderService, customers);
            var httpContext = new MockHttpContext();

            //Actions
            httpContext.Request.Cookies.Add(new System.Web.HttpCookie("eCommerceBasket")
            {
                Value = basket.Id
            });
            controller.ControllerContext = new System.Web.Mvc.ControllerContext(httpContext, new System.Web.Routing.RouteData(), controller);

            var result        = controller.BasketSummary() as PartialViewResult;
            var basketSummary = (BasketSummaryViewModel)result.ViewData.Model;

            Assert.AreEqual(3, basketSummary.BasketCount);
            Assert.AreEqual(25.00m, basketSummary.BasketTotal);
        }
 public TestQuoteServices()
 {
     service       = new QuoteServices(this.TContext);
     serviceBasket = new BasketServices(this.TContext);
 }
Ejemplo n.º 7
0
 public TestBasketServices()
 {
     service = new BasketServices(this.TContext);
 }
Ejemplo n.º 8
0
 public HomeController(IRepositoryBase <Customer> customers, IRepositoryBase <Product> products)
 {
     this.customers = customers;
     this.products  = products;
     basketService  = new BasketServices(this.baskets);
 }
Ejemplo n.º 9
0
        protected override async Task OnInitializedAsync()
        {
            var res = await BasketServices.GetAsync();

            Products = res.ToList();
        }
Ejemplo n.º 10
0
        public void CanCheckoutAndCreateOrder()
        {
            IRepository <Product>  products  = new MockContext <Product>();
            IRepository <Customer> customers = new MockContext <Customer>();

            products.Insert(new Product()
            {
                Id = "1", Price = 10.00m
            });
            products.Insert(new Product()
            {
                Id = "2", Price = 5.00m
            });

            IRepository <Basket> baskets = new MockContext <Basket>();
            Basket basket = new Basket();

            basket.BasketItems.Add(new BasketItem()
            {
                ProductId = "1", Quantity = 2, BasketId = basket.Id
            });
            basket.BasketItems.Add(new BasketItem()
            {
                ProductId = "2", Quantity = 1, BasketId = basket.Id
            });

            baskets.Insert(basket);

            IBasketService basketService = new BasketServices(products, baskets);

            IRepository <Order> orders       = new MockContext <Order>();
            IOrderService       orderService = new OrderService(orders);

            customers.Insert(new Customer()
            {
                Id = "1", Email = "*****@*****.**", ZipCode = "11111"
            });

            IPrincipal FakeUser = new GenericPrincipal(new GenericIdentity("*****@*****.**", "Forms"), null);

            var controller  = new BasketController(basketService, orderService, customers);
            var httpContext = new MockHttpContext();

            httpContext.User = FakeUser;
            httpContext.Request.Cookies.Add(new System.Web.HttpCookie("eCommerceBasket")
            {
                Value = basket.Id
            });
            controller.ControllerContext = new System.Web.Mvc.ControllerContext(httpContext, new System.Web.Routing.RouteData(), controller);

            //Run
            Order order = new Order();

            controller.Checkout(order);

            //assert
            Assert.AreEqual(2, order.OrderItems.Count);
            Assert.AreEqual(0, basket.BasketItems.Count);

            Order orderInRep = orders.Find(order.Id);

            Assert.AreEqual(2, orderInRep.OrderItems.Count);
        }