Example #1
0
        public void Return15PctForNewCustomer()
        {
            var customer   = new Customer();
            var calculator = new CustomerDiscountCalculator(customer, DateTime.Now);
            var discount   = calculator.CalculateDiscountPercentage();

            Assert.AreEqual(0.15m, discount);
        }
Example #2
0
        public void Return22PctFor5YearLoyalCustomerOnBirthday()
        {
            var customer = new Customer
            {
                DateOfBirth         = DateTime.Today,
                DateOfFirstPurchase = DateTime.Today.AddYears(-5)
            };
            var calculator = new CustomerDiscountCalculator(customer, DateTime.Now);
            var discount   = calculator.CalculateDiscountPercentage();

            Assert.AreEqual(0.22m, discount);
        }
Example #3
0
        public void Return10PctForBirthday()
        {
            var customer = new Customer
            {
                DateOfBirth         = DateTime.Today,
                DateOfFirstPurchase = DateTime.Today.AddDays(-1)
            };
            var calculator = new CustomerDiscountCalculator(customer, DateTime.Now);
            var discount   = calculator.CalculateDiscountPercentage();

            Assert.AreEqual(0.10m, discount);
        }
Example #4
0
        public void Return5PctForSenior()
        {
            var customer = new Customer
            {
                DateOfBirth         = DateTime.Today.AddYears(-65).AddDays(-5),
                DateOfFirstPurchase = DateTime.Today.AddDays(-1)
            };
            var calculator = new CustomerDiscountCalculator(customer, DateTime.Now);
            var discount   = calculator.CalculateDiscountPercentage();

            Assert.AreEqual(0.05m, discount);
        }