protected void RunRuleTests(ILoan loan, LoanValidationResponse response) { foreach (var rule in Rules) { response.Results.Add(CreateRuleTestResult(rule.Type, rule.Pass(loan))); } }
public LoanValidationResponse ValidateLoan(ILoan loan) { var response = new LoanValidationResponse(); var globalRuleResult = CreateRuleTestResult(GlobalRule.Type, GlobalRule.Pass(loan)); response.Results.Add(globalRuleResult); if (globalRuleResult.Pass) { RunRuleTests(loan, response); } return(response); }