public void CalculateMonthlyPaymentCorrectly_ZeroPrincipal()
        {
            var principal = 0M;
            var rate      = 5M;
            var months    = 12M;

            var monthlyPayment = calculator.CalculateMonthlyPayment(principal, rate, months);

            Assert.AreEqual(0, monthlyPayment);
        }
Ejemplo n.º 2
0
        public LoanQuote GetQuote(decimal loanAmount, decimal loanMonths)
        {
            var loanAllocations = loanAllocationProvider.GetLoanAllocationsForAmount(loanAmount);
            var monthlyPayment  = loanAllocations.Sum(o => calculator.CalculateMonthlyPayment(o.Amount, o.Rate, loanMonths));
            var totalPayment    = calculator.CalculateTotalPayment(monthlyPayment, loanMonths);
            var interestRate    = calculator.CalculateInterestRate(loanAmount, monthlyPayment, loanMonths);

            return(new LoanQuote
            {
                LoanAmount = loanAmount,
                InterestRate = interestRate,
                MonthlyRepayment = monthlyPayment,
                TotalRepayment = totalPayment
            });
        }