Пример #1
0
        public async System.Threading.Tasks.Task <RedirectToRouteResult> AddToCart(Domain.Entities.Cart cart, int productId, string returnUrl)
        {
            string key = ConfigurationManager.AppSettings.Get("ProductListCacheKey");
            IEnumerable <Domain.Entities.Product> productList = await _productRepository.Products(key);

            Domain.Entities.Product product = productList.FirstOrDefault(p => p.ProductId == productId);
            if (product != null)
            {
                cart.AddItem(product, 1);
            }
            return(RedirectToAction("Index", new { returnUrl }));
        }
Пример #2
0
        public void Add_New_Lines()
        {
            //Arrnage
            Product P1 = new Product {
                ProductID = 1, Name = "P1"
            };
            Product P2 = new Product {
                ProductID = 2, Name = "P2"
            };

            //Arrange - new Cart
            SportsStore.Domain.Entities.Cart target = new Domain.Entities.Cart();

            //Act
            target.AddItem(P1, 1);
            target.AddItem(P2, 1);
            CartLine[] results = target.Lines.ToArray();

            //ASsert
            Assert.AreEqual(results.Length, 2);
            Assert.AreEqual(results[0].Product, P1);
            Assert.AreEqual(results[1].Product, P2);
        }
Пример #3
0
        //Combine
        public void Can_Add_Quantity_For_Exisiting_Lines()
        {
            //Arrange
            Product p1 = new Product {
                ProductID = 1, Name = "p1"
            };
            Product p2 = new Product {
                ProductID = 2, Name = "p2"
            };

            //Act
            SportsStore.Domain.Entities.Cart target = new Domain.Entities.Cart();

            target.AddItem(p1, 1);
            target.AddItem(p2, 1);
            target.AddItem(p1, 10);

            CartLine[] result = target.Lines.OrderBy(a => a.Product.ProductID).ToArray();

            //Asset
            Assert.AreEqual(result.Length, 2);
            Assert.AreEqual(result[0].Qunatity, 11);
            Assert.AreEqual(result[1].Qunatity, 1);
        }