public void GetPrice_ArrayHasZeroValues_Returns0() { //Arrange int[] cart = { }; var bookPriceCalculator = new BookPriceCalculator(cart); //Action var totalPrice = bookPriceCalculator.GetPrice(); //Assert Assert.AreEqual(0, totalPrice); }
public void GetPrice_2SetsOf2BooksSame_ReturnsSpecialDiscount() { //Arrange int[] cart = { 1, 2, 2, 1 }; var bookPriceCalculator = new BookPriceCalculator(cart); //Action var totalPrice = bookPriceCalculator.GetPrice(); //Assert Assert.AreEqual(2 * (8 * 2 * .95), totalPrice); }
public void GetPrice_FiveValuesOfSameBook_ReturnsSumofPrices() { //Arrange int[] cart = { 1, 1, 1, 1, 1 }; var bookPriceCalculator = new BookPriceCalculator(cart); //Action var totalPrice = bookPriceCalculator.GetPrice(); //Assert Assert.AreEqual(8 * 5, totalPrice); }
public void GetPrice_OneValue_ReturnsPriceOfThatBook() { //Arrange int[] cart = { 1 }; var bookPriceCalculator = new BookPriceCalculator(cart); //Action var totalPrice = bookPriceCalculator.GetPrice(); //Assert Assert.AreEqual(8, totalPrice); }
public void GetPrice_FiveValuesOfDifferentBook_ReturnsPriceWith25PercentDiscount() { //Arrange int[] cart = { 1, 2, 3, 4, 5 }; var bookPriceCalculator = new BookPriceCalculator(cart); //Action var totalPrice = bookPriceCalculator.GetPrice(); //Assert Assert.AreEqual(8 * 5 * .75, totalPrice); }
public void GetPrice_2BooksSame4BooksDifferent_ReturnsSpecialDiscount() { //Arrange int[] cart = { 0, 1, 1, 2, 3, 4 }; var bookPriceCalculator = new BookPriceCalculator(cart); //Action var totalPrice = bookPriceCalculator.GetPrice(); //Assert Assert.AreEqual(8 + (8 * 5 * 0.75), totalPrice, "Total was supposed to be " + (8 + (8 * 5 * 0.75)) + "but was " + totalPrice); }
public void GetPrice_Special_ReturnsSpecialDiscount() { //Arrange int[] cart = { 0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 4 }; var bookPriceCalculator = new BookPriceCalculator(cart); //Action var totalPrice = bookPriceCalculator.GetPrice(); //Assert Assert.AreEqual((8 * 4 * 0.8) + (8 * 2 * 0.95) + 8 + (8 * 5 * .75), totalPrice); }
public void GetPrice_IncrementalBasket_ReturnsSpecialDiscount() { //Arrange int[] cart = { 0, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4 }; var bookPriceCalculator = new BookPriceCalculator(cart); //Action var totalPrice = bookPriceCalculator.GetPrice(); //Assert Assert.AreEqual(100, totalPrice); }
public void Init() { this._bookPriceCalculator = new BookPriceCalculator(); }