static void CalculateUsingLondonStyle() { var priceHelper = new LondonStyle.PriceHelper(); var priceCalculator = new LondonStyle.PriceCalculator(priceHelper); var finalPrice = priceCalculator.GetFinalPrice(100, 7.25m); Console.WriteLine($"LondonStyle -> Final price is: {finalPrice}"); }
public void ShouldCalculateFinalPrice() { const decimal originalPrice = 99; const decimal stateTax = 7.25m; const decimal priceTax = 7.1775m; const decimal finalNonRoundedPrice = 106.1775m; const decimal finalPrice = 106.18m; _priceHelper .Setup(x => x.CalculatePriceTax(originalPrice, stateTax)) .Returns(priceTax); _priceHelper .Setup(x => x.CalculateFinalPrice(originalPrice, priceTax)) .Returns(finalNonRoundedPrice); _priceHelper .Setup(x => x.RoundToTwoDecimals(finalNonRoundedPrice)) .Returns(finalPrice); var price = _sut.GetFinalPrice(originalPrice, stateTax); Assert.That(price, Is.EqualTo(finalPrice)); }