public void When_no_promotion_applies() { var rule = new Mock<IPromotionalDiscountRule>(); rule.Setup(p => p.PromotionApplies(It.IsAny<LineItem>())).Returns(false); var sut = new Promotions(new List<IPromotionalDiscountRule>() { rule.Object }); var productCatalog = new ProductCatalog(); productCatalog.AddProduct("apple", 0.75m); var lineItem = new LineItem("apple", 7, productCatalog, sut); var actual = sut.CalculatePromotionalCost(lineItem); Assert.That(actual.DiscountedSubTotal, Is.EqualTo(lineItem.SubTotal)); Assert.That(actual.DiscountNote, Is.EqualTo("")); }
public void When_no_promotion_applies() { var rule = new Mock <IPromotionalDiscountRule>(); rule.Setup(p => p.PromotionApplies(It.IsAny <LineItem>())).Returns(false); var sut = new Promotions(new List <IPromotionalDiscountRule>() { rule.Object }); var productCatalog = new ProductCatalog(); productCatalog.AddProduct("apple", 0.75m); var lineItem = new LineItem("apple", 7, productCatalog, sut); var actual = sut.CalculatePromotionalCost(lineItem); Assert.That(actual.DiscountedSubTotal, Is.EqualTo(lineItem.SubTotal)); Assert.That(actual.DiscountNote, Is.EqualTo("")); }