public void Given_Basket_Should_Compute_Price(Basket basket, decimal expectedPrice) { // arrange var pricer = new Pricer(); // act var price = pricer.Compute(basket); // assert price.Should().BeApproximately(expectedPrice, precision); }
public void Given_Product_Should_Compute_Price_V2(Product product, decimal expectedPrice) { // arrange var pricer = new Pricer(); // act var price = pricer.Compute(product); // assert price.Should().BeApproximately(expectedPrice, precision); }
public void ComputeWithDateInOutOfCsvDatesRange() { var pricingDate = DateTime.Parse("20/08/2017"); var bondprice = pricer.Compute(FixBond, pricingDate); Assert.AreEqual(bondprice, 0); }
public decimal Given_Product_Should_Compute_Price_V2(int quantity, decimal unitPrice) { // arrange var product = new Product { Quantity = quantity, UnitPrice = unitPrice }; var pricer = new Pricer(); // act // assert return(pricer.Compute(product)); }
public void Given_Product_Should_Compute_Price_V1(int quantity, double unitPrice, double expectedPrice) { // arrange var productUnitPrice = Convert.ToDecimal(unitPrice); var productExpectedPrice = Convert.ToDecimal(expectedPrice); var product = new Product { Quantity = quantity, UnitPrice = productUnitPrice }; var pricer = new Pricer(); // act var price = pricer.Compute(product); // assert price.Should().BeApproximately(productExpectedPrice, precision); }
static void Main(string[] args) { var pricer = new Pricer(); Bond bond = new FixRateBond(); bond.Maturity = 4; bond.Periodicity = 6; bond.IssueDate = DateTime.Parse("26/02/1993"); bond.Rate = 0.08; bond.Nominal = 100; var pricerDate = DateTime.Parse("01/01/1993"); while (pricerDate != bond.IssueDate.AddYears(bond.Maturity).AddDays(2)) { var bondPrice = pricer.Compute(bond, pricerDate); //20/09/1993 Console.WriteLine("Pricer Date {0} => Price : {1}", pricerDate, bondPrice); pricerDate = pricerDate.AddDays(1); } Console.ReadLine(); }