public void The_correct_quote_is_returned() { _quote.SetMinimumAvailableRate(0.07); _quote.InputModel.SetLoanAmount(1000); Execute(); _quote.Quote.Rate.ShouldEqual(_quote.MinimumLendingRateAvailable); _quote.Quote.RequestedAmount.ShouldEqual(_quote.InputModel.LoanAmount); Math.Round(_quote.Quote.MonthlyRepayment, 2).ShouldEqual(34.25); Math.Round(_quote.Quote.TotalRepayment, 2).ShouldEqual(1232.93); }
public override void HandleRequest(QuoteModel quote) { quote.SetMinimumAvailableRate(quote.LoanProviders .Where(r => r.Available >= quote.InputModel.LoanAmount) .OrderBy(r => r.Rate) .Select(r => r.Rate) .FirstOrDefault()); if (quote.MinimumLendingRateAvailable == 0) { quote.SetErrorMessage(NO_RATE_AVAILABLE); return; } successor.HandleRequest(quote); }