public void NoApplicable_Promo_On_Order_Items_Returns_TotalAmount() { var order = new Order(Guid.NewGuid()); order.Add(new LineItem(DataSetHelper.GetProductBySKU("A"), 1)); order.Add(new LineItem(DataSetHelper.GetProductBySKU("B"), 1)); order.Add(new LineItem(DataSetHelper.GetProductBySKU("C"), 1)); DataSetHelper.AddAllPromosToOrder(order); var total = order.CalculateOrderPrice(); Assert.AreEqual(100, total); }
public void WhenSingleApplicable_Promo_WithMultipleApplicableTimes_On_Order_Items_Returns_TotalAmountWithDiscount() { var order = new Order(Guid.NewGuid()); order.Add(new LineItem(DataSetHelper.GetProductBySKU("A"), 7)); order.Add(new LineItem(DataSetHelper.GetProductBySKU("B"), 1)); order.Add(new LineItem(DataSetHelper.GetProductBySKU("C"), 1)); DataSetHelper.AddAllPromosToOrder(order); var total = order.CalculateOrderPrice(); Assert.AreEqual(360, total); }