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);
        }
Beispiel #3
0
        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);
        }
Beispiel #6
0
        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();
        }