Exemplo n.º 1
0
        public void CalculateTotalTax_WithMultipleItems_CalculatesTaxValue()
        {
            //arrange
            double             price       = 45.35;
            int                quantity    = 4;
            ShoppingBasketItem item        = new ShoppingBasketItem(new Product("test", price), quantity);
            double             expectedTax = item.CalculateSingleItemTax() * quantity;

            //act
            double actualTax = item.CalculateTotalTax();

            //assert
            Assert.AreEqual(expectedTax, actualTax, "total tax incorrectly calculated for item with quantity of 4");
        }
Exemplo n.º 2
0
        public void AddItem_WithNewBasket_UpdatesTotals()
        {
            //arrange
            ShoppingBasket     basket           = new ShoppingBasket();
            ShoppingBasketItem item             = new ShoppingBasketItem(new Product("test", 5.5, ProductType.Other));
            double             expetedTotalCost = item.CalculateTotalCost();
            double             expectedTotalTax = item.CalculateTotalTax();

            //act
            basket.AddItem(item);

            //assert
            Assert.AreEqual(expectedTotalTax, basket.TotalTax, "Total tax not updated correctly");
            Assert.AreEqual(expetedTotalCost, basket.TotalCost, "Total cost not update correctly");
        }
Exemplo n.º 3
0
        public void AddItem_WithMultipleItems_UpdatesTotals()
        {
            //arrange
            ShoppingBasket     basket           = new ShoppingBasket();
            ShoppingBasketItem item1            = new ShoppingBasketItem(new Product("test", 5.5, ProductType.Other));
            ShoppingBasketItem item2            = new ShoppingBasketItem(new Product("test", 8.75, ProductType.Food));
            double             expetedTotalCost = item1.CalculateTotalCost() + item2.CalculateTotalCost();
            double             expectedTotalTax = item1.CalculateTotalTax() + item2.CalculateTotalTax();

            //act
            basket.AddItem(item1);
            basket.AddItem(item2);

            //assert
            Assert.AreEqual(expectedTotalTax, basket.TotalTax, "Total tax not updated correctly");
            Assert.AreEqual(expetedTotalCost, basket.TotalCost, "Total cost not update correctly");
        }