Exemplo n.º 1
0
        public void AddTest()
        {
            var product1 = new ProductModel {
                Id = Guid.NewGuid(), Name = "product1", Price = 1m
            };
            var product2 = new ProductModel {
                Id = Guid.NewGuid(), Name = "product2", Price = 2m
            };

            var discount1 = new DiscountModel {
                Code = "discount1", Percents = 0.50m
            };
            var discount2 = new DiscountModel {
                Code = "discount2", Percents = 0.25m
            };

            _shoppingCartService.AddProduct(product1);
            _shoppingCartService.AddProduct(product2);

            _shoppingCartService.AddProductDiscount(product1, discount1);
            _shoppingCartService.AddProductDiscount(product2, discount2);

            var shoppingCart = _shoppingCartService.GetShoppingCart();

            Assert.AreEqual(shoppingCart.Products.ElementAt(0), product1);
            Assert.AreEqual(shoppingCart.Products.ElementAt(1), product2);

            Assert.AreEqual(shoppingCart.Products.ElementAt(0).Discount, discount1);
            Assert.AreEqual(shoppingCart.Products.ElementAt(1).Discount, discount2);
        }
        public ResponseService AddProduct(Product product)
        {
            var response = new ShoppingCartResponseService();

            try
            {
                productService.ProductDataValidation(product);
                shoppingCartService.AddProduct(product);

                // Return ok value using the generic return class
                response.SetOKResponse("Product add successfully");
                return(response);
            }
            catch (ProductsValidationExceptions e)
            {
                response.SetErrorResponse(e.Message);
                return(response);
            }
            catch (Exception e)
            {
                traceLogs.SaveErrorLogs(e);
                response.SetErrorResponse("Error adding product to the shopping cart");
                return(response);
            }
        }
Exemplo n.º 3
0
        public void AddProductToShoppingCart()
        {
            shoppingCartService.AddProduct(product1);
            shoppingCartService.AddProduct(product2);

            Assert.Equal(2, shoppingCartService.GetProducts().Count);
            Assert.Equal("PROD_01", shoppingCartService.GetProducts()[0].ProductCode);
            Assert.Equal("PROD_02", shoppingCartService.GetProducts()[1].ProductCode);
        }