Example #1
0
        private IPayPeriodBuilder[] CreateBuilders()
        {
            IPayDay payDay1 = new PayDay();

            payDay1.Date     = new DateTime(2017, 05, 01);
            payDay1.Amount   = 0m;
            payDay1.RecordId = 1;

            IPayDay payDay2 = new PayDay();

            payDay2.Date     = new DateTime(2017, 05, 20);
            payDay2.Amount   = 0;
            payDay2.RecordId = 2;

            IPayPeriodBuilder builder1 = new PayPeriodBuilder(payDay1, payDay2.Date);

            builder1.Surplus = 0;

            IPayPeriodBuilder builder2 = new PayPeriodBuilder(payDay2, null);

            builder2.Surplus = 0;
            builder2.Deficit = 0;

            return(new[] { builder1, builder2 });
        }
        public void TestBlueSky_Build_Deficit()
        {
            //set-up
            CreateAccounts();
            FirstPayDay           = CreatePayDay(new DateTime(2017, 05, 01), 0);
            SecondPayDay          = CreatePayDay(new DateTime(2017, 05, 05), 10);
            FirstPayPeriodBuilder = new PayPeriodBuilder(FirstPayDay, SecondPayDay.Date);

            //exercise
            FirstPayPeriodBuilder.Build();

            //post-conditions
            Assert.AreEqual(5, FirstPayPeriodBuilder.Deficit);
        }