public void CartCheckout_ValidOrders_NoUser_Fails()
 {
     var wineToBuy = new Wine { Name = "Great red wine" };
     cart.User = null;
     cart.AddLineToCart(new OrderLine(wineToBuy) { Quantity = 2 });
     Assert.Throws<InvalidOperationException>(() => cart.CheckOut());
 }
Example #2
0
        public OrderLine(Wine wineToBuy)
        {
            if (wineToBuy == null)
                throw new ArgumentNullException("wineToBuy");

            _wineToBuy = wineToBuy;
            Quantity = 1;
        }
        public void CartAddLessOrZeroQuantityElements_Fails(int lessQuantity)
        {
            var wineToBuy = new Wine { Name = "Great red wine" };
            var line = new OrderLine(wineToBuy)
            {
                Quantity = lessQuantity,
                Price = 10
            };

            Assert.Throws<InvalidOperationException>(() => cart.AddLineToCart(line));
        }
 public void CartCheckoutPriceOK_OneLine()
 {
     var wineToBuy = new Wine { Name = "Great red wine" };
     var line = new OrderLine(wineToBuy)
                    {
                        Quantity = 5,
                        Price = 50
                    };
     cart.AddLineToCart(line);
     cart.CheckOut();
     Assert.AreEqual(250, cart.TotalPrice);
 }