using Xunit; namespace Prices.Tests; public sealed class PriceCalculatorTests { [Fact] public void No_discount_keeps_the_price() { Assert.Equal(100m, PriceCalculator.ApplyDiscount(100m, 0m)); } [Fact] public void A_full_discount_makes_it_free() { Assert.Equal(0m, PriceCalculator.ApplyDiscount(200m, 100m)); } [Fact] public void A_quarter_off_200_is_150() { Assert.Equal(150m, PriceCalculator.ApplyDiscount(200m, 25m)); } [Fact] public void Half_off_80_is_40() { Assert.Equal(40m, PriceCalculator.ApplyDiscount(80m, 50m)); } [Fact] public void A_discount_above_100_percent_is_refused() { Assert.Throws(() => PriceCalculator.ApplyDiscount(100m, 101m)); } }