public ActionResult AddProductToShoppingCart(int hdnProductID, int hdnQuantity)
        {
            _shoppingCartService.AddProductToShoppingCart(hdnProductID, hdnQuantity, this.User.UserID);
            var products = this._productRepository.GetAll();

            return(View("Index", products));
        }
Example #2
0
        public void AddProductToShoppingCart_Should_Return_False_If_Product_Not_Available_In_Stock()
        {
            //Act
            var request = new AddToShoppingCartRequest {
                ProductId = ObjectId.GenerateNewId().ToString(),
                Amount    = 2
            };
            var shoppingCartRepository = new Mock <IShoppingCartRepository>();
            var productRepositoryMock  = new Mock <IProductRepository>();
            var service = new ShoppingCartService(productRepositoryMock.Object, shoppingCartRepository.Object);

            // Act
            productRepositoryMock.Setup(x => x.GetByProductId(request.ProductId)).Returns(new Product()
            {
                Id                = request.ProductId,
                Name              = "Terrarium",
                Price             = 4.00,
                AvailableQuantity = 0
            });


            var response = service.AddProductToShoppingCart(request);

            // Assert
            Assert.IsFalse(Convert.ToBoolean(response));
        }
Example #3
0
        public async Task <IActionResult> OnPost()
        {
            string productId = Request.Form["product"];
            await _shoppingCartService.AddProductToShoppingCart(GetShoppingCartId(), await _productsService.GetProduct(productId));

            return(new RedirectToPageResult("Index"));
        }
Example #4
0
        public void AddProductToShoppingCart_Should_Return_False_If_Product_Is_Null()
        {
            //Act
            var request = new AddToShoppingCartRequest {
                ProductId = ObjectId.GenerateNewId().ToString(),
                Amount    = 2
            };
            var shoppingCartRepository = new Mock <IShoppingCartRepository>();
            var productRepositoryMock  = new Mock <IProductRepository>();
            var service = new ShoppingCartService(productRepositoryMock.Object, shoppingCartRepository.Object);

            // Act
            var response = service.AddProductToShoppingCart(request);

            // Assert
            Assert.IsFalse(Convert.ToBoolean(response));
        }
 public IActionResult AddToCart(int inventoryId)
 {
     if (Request.Cookies.TryGetValue("ShoppingCart", out string value))
     {
         if (ShoppingCartService.CookieToShoppingCart(value, out ShoppingCartCookie shoppingCartCookie))
         {
             ShoppingCartService.AddProductToShoppingCart(shoppingCartCookie, inventoryId);
             Response.Cookies.Append("ShoppingCart", shoppingCartCookie.ToJson());
             return(Ok());
         }
         //Reset cookie string cause it dont make sense
         Response.Cookies.Delete("ShoppingCart");
         return(BadRequest());
     }
     else
     {
         Response.Cookies.Append("ShoppingCart", ShoppingCartService.CreateNewShoppingCart(inventoryId));
         return(Ok("New cookie set"));
     }
 }