public void Test_Constructor(int year, int month, int day, int expectedYear, int expectedMonth, int expectedDay) { var date = new DateTime(year, month, day); var downpayment = 100.00M; var baseMortgage = new FixedRateMortgage(downpayment, 0.0314M, 300, date); var mortgage = new InsuredMortgage(baseMortgage, 20.00M); Assert.That(mortgage.InitiatedAt.Year, Is.EqualTo(expectedYear)); Assert.That(mortgage.InitiatedAt.Month, Is.EqualTo(expectedMonth)); Assert.That(mortgage.InitiatedAt.Day, Is.EqualTo(expectedDay)); }
public void Test_InsuranceValue(decimal downPaymentPercentage, decimal expected) { var purchasedAt = new DateTime(2019, 1, 1); var homePrice = 500000.00M; var downPayment = downPaymentPercentage * homePrice; var mortgageAmount = (1 - downPaymentPercentage) * homePrice; var preferredInterestRate = 0.0319M; var baseMortgage = new FixedRateMortgage(mortgageAmount, preferredInterestRate, 300, purchasedAt); var subject = new InsuredMortgage(baseMortgage, downPayment); Assert.That( subject.Insurance, Is.EqualTo(expected).Within(15.00M).Percent ); }