public void GiveApplyWhenCartItemQuantityThresholdNotMetThenReturnCorrectly() { var discount = 28m; var cartItem = new CartItem(new Item() { Sku = "1", UnitPrice = 10.00m }, 3); var sut = new QuantityForSetPricePromotion(4, discount); sut.Apply(cartItem, _calculate); cartItem.LineTotal.Should().Be(30.00m); }
public void GiveApplyWhenCalledThenReturnCorrectly(decimal unitPrice, int cartItemQuantity, decimal discount, int quantityAppliedAt, decimal expectedTotal) { var cartItem = new CartItem(new Item() { Sku = "1", UnitPrice = unitPrice }, cartItemQuantity); var sut = new QuantityForSetPricePromotion(quantityAppliedAt, discount); sut.Apply(cartItem, _calculate); cartItem.LineTotal.Should().Be(expectedTotal); }
public void GivenApplyWhenItemIsNullThenReturn() { var sut = new QuantityForSetPricePromotion(1, 1); Assert.Throws <ArgumentNullException>(() => sut.Apply(null, null)); }