Example #1
0
        public void Dueincludesrentrate()
        {
            var sut = new RentBillComposer1(null);
            var lse = SampleLease(out DateTime date);
            var bil = SampleBillState();
            var due = sut.GetTotalDue(lse, bil, date);

            due.Should().Be(lse.Rent.RegularRate);
            var end = sut.ComputeClosingBalance(lse, bil, date);

            end.Should().Be(0);
        }
Example #2
0
        public void ZeroDueifinactive()
        {
            var sut = new RentBillComposer1(null);
            var lse = SampleLease(out DateTime date);

            lse.ContractEnd = 2.May(2018);
            var bil = SampleBillState();
            var due = sut.GetTotalDue(lse, bil, 3.May(2018));

            due.Should().Be(0);
            var end = sut.ComputeClosingBalance(lse, bil, 3.May(2018));

            end.Should().Be(0);
        }
Example #3
0
        public void Dueincludesadjustments()
        {
            var sut = new RentBillComposer1(null);
            var lse = SampleLease(out DateTime date);
            var bil = SampleBillState();

            bil.Adjustments[0].AmountOffset = 789;
            var due = sut.GetTotalDue(lse, bil, date);

            due.Should().Be(bil.TotalAdjustments + lse.Rent.RegularRate);
            var end = sut.ComputeClosingBalance(lse, bil, date);

            end.Should().Be(0);
        }
Example #4
0
        public void Dueincludespenalty()
        {
            var sut = new RentBillComposer1(null);
            var lse = SampleLease(out DateTime date);
            var bil = SampleBillState();

            bil.Penalties[0].Amount = 456;
            var due = sut.GetTotalDue(lse, bil, date);

            due.Should().Be(bil.TotalPenalties + lse.Rent.RegularRate);
            var end = sut.ComputeClosingBalance(lse, bil, date);

            end.Should().Be(0);
        }
Example #5
0
        public void ZeroDueifatGracePeriod()
        {
            var sut = new RentBillComposer1(null);
            var bil = SampleBillState();
            var lse = SampleLease(out DateTime date);

            lse.Rent.GracePeriodDays = 3;

            sut.GetTotalDue(lse, bil, 1.May(2018)).Should().Be(0);
            sut.GetTotalDue(lse, bil, 2.May(2018)).Should().Be(0);
            sut.GetTotalDue(lse, bil, 3.May(2018)).Should().Be(0);
            sut.GetTotalDue(lse, bil, 4.May(2018)).Should().Be(0);
            sut.GetTotalDue(lse, bil, 5.May(2018)).Should().Be(120);
            sut.ComputeClosingBalance(lse, bil, 5.May(2018)).Should().Be(0);
        }