public void ShouldReturnNoDiscountWhenThereIsNoDiscount() { var discountTypes = new List <DiscountType>(); var discountFormula = new DiscountFormula(discountTypes, 1).Discount; IsType <NoDiscount>(discountFormula); }
public void ShouldReturnNinetyFivePercentWhenDiscountIsNinetyFivePercent() { var discountTypes = new List <DiscountType> { DiscountType.NintyFivePercentDiscount }; var discountFormula = new DiscountFormula(discountTypes, 1).Discount; IsType <NinetyFivePercent>(discountFormula); }
public void ShouldReturnBuyTwoGetOneFreeWhenDiscountIsBuyTwoGetOneFree() { var discountTypes = new List <DiscountType> { DiscountType.BuyTwoGetOneFree }; var discountFormula = new DiscountFormula(discountTypes, 1).Discount; IsType <BuyTwoGetOneFree>(discountFormula); }
public void ShouldDiscountNinetyFiveWhenTheQuantityIsLessThanThreeWhenBothDiscountApplys() { var discountTypes = new List <DiscountType> { DiscountType.BuyTwoGetOneFree, DiscountType.NintyFivePercentDiscount }; var discountFormula = new DiscountFormula(discountTypes, 2).Discount; IsType <NinetyFivePercent>(discountFormula); }
public void ShouldBuyTwoGetOneFreeWhenTheQuantityIsLargerThanTwoWhenBothDiscountApplys() { var discountTypes = new List <DiscountType> { DiscountType.BuyTwoGetOneFree, DiscountType.NintyFivePercentDiscount }; var discountFormula = new DiscountFormula(discountTypes, 3).Discount; IsType <BuyTwoGetOneFree>(discountFormula); }