public void NoBooksCostZero() { var price = PotterBooks.CalculatePriceFor(string.Empty); AssertPrice(price, 0 * PotterBooks.UnitBookPrice); }
[TestCase("AAAAABBBBBCCCCDDDDDEEEE", (3 * (5 * PotterBooks.UnitBookPrice * 0.75d)) + (2 * (4 * PotterBooks.UnitBookPrice * 0.80d)))] // = ABCDE + ABCDE + ABCDE + ABCD + ABDE public void EdgeCaseIsPricedCorrectly(string books, double expectedPrice) { var price = PotterBooks.CalculatePriceFor(books); AssertPrice(price, expectedPrice); }
public void MultipleBooksOfDifferentTypesArePricedCorrectly(string books, double expectedPrice) { var price = PotterBooks.CalculatePriceFor(books); AssertPrice(price, expectedPrice); }
public void SimpleDiscountCombinationsArePricedCorrectly(string books, double expectedPrice) { var price = PotterBooks.CalculatePriceFor(books); AssertPrice(price, expectedPrice); }
public void ASingleBookIsPricedCorrectly(string books) { var price = PotterBooks.CalculatePriceFor(books); AssertPrice(price, 1 * PotterBooks.UnitBookPrice); }