public void CalculateTotal_NoItems_ReturnsZero() { var checkout = new Checkout(null); var total = checkout.CalculateTotal(); total.Should().Be(0); }
public void CalculateTotal_OneItem_ReturnsItemsValue() { var prices = GetPrices(); var checkout = new Checkout(prices); checkout.Scan("A"); var total = checkout.CalculateTotal(); total.Should().Be(50); }
public void CalulateTotal_ItemsThatDontQualifyForOffer_ShouldBeSummed() { var prices = GetPrices(); var checkout = new Checkout(prices); checkout.Scan("A"); checkout.Scan("A"); var total = checkout.CalculateTotal(); total.Should().Be(100); }
public void CalculateTotal_TwoItems_ReturnsSumOfTwoItems() { var prices = GetPrices(); var checkout = new Checkout(prices); checkout.Scan("A"); checkout.Scan("B"); var total = checkout.CalculateTotal(); total.Should().Be(80); }
public void CalulateTotal_ItemsThatQualifyForOfferOfDifferentKinds_OfferShouldBeAppliedToBoth() { var prices = GetPrices(); var checkout = new Checkout(prices); checkout.Scan("A"); checkout.Scan("A"); checkout.Scan("A"); checkout.Scan("B"); checkout.Scan("B"); var total = checkout.CalculateTotal(); total.Should().Be(175); }
public void CalulateTotal_OneItemFromEachProduct_ReturnsSum() { var prices = GetPrices(); var checkout = new Checkout(prices); checkout.Scan("C"); checkout.Scan("D"); checkout.Scan("B"); checkout.Scan("A"); var total = checkout.CalculateTotal(); total.Should().Be(115); }