Ejemplo n.º 1
0
        public Order Checkout()
        {
            var subTotal        = _items.Values.Select(cartItem => cartItem.TotalPrice).Sum();
            var discounts       = _discountStore.GetDiscounts().SelectMany(d => d.Apply(_items.Values)).ToList();
            var discountsAmount = discounts.Select(d => d.Amount).Sum();
            var total           = subTotal - discountsAmount;

            return(new Order(subTotal, total, discounts));
        }
Ejemplo n.º 2
0
        public CartTests()
        {
            Milk   = new Product("Milk", 1.0m);
            Bread  = new Product("Bread", 1.5m);
            Apples = new Product("Apples", 1.25m);

            DiscountStore = Substitute.For <IDiscountStore>();
            Sut           = new Cart(DiscountStore);

            DiscountStore.GetDiscounts().Returns(new List <Discount>());
        }