/// <summary> /// If there are no SortCode Modulus Weight Mappings available then the BankAccountDetails validate as true. /// Otherwise move onto the first modulus calculation step /// </summary> public bool Process(BankAccountDetails bankAccountDetails) { var isValidForModulusCheck = bankAccountDetails.IsValidForModulusCheck(); var isUncheckableForeignAccount = bankAccountDetails.IsUncheckableForeignAccount(); if (!isValidForModulusCheck || isUncheckableForeignAccount) return true; var result = _firstModulusCalculatorStep.Process(bankAccountDetails); return result; }
public void CanCheckForForeignAccountException(string sc, string an, int desiredMappings, int exception, bool expected) { var target = new BankAccountDetails(sc, an) { WeightMappings = BuildMappingList(sc, desiredMappings, exception) }; Assert.AreEqual(expected, target.IsUncheckableForeignAccount()); }
/// <summary> /// If there are no SortCode Modulus Weight Mappings available then the BankAccountDetails validate as true. /// Otherwise move onto the first modulus calculation step /// </summary> public bool Process(BankAccountDetails bankAccountDetails) { return !bankAccountDetails.IsValidForModulusCheck() || bankAccountDetails.IsUncheckableForeignAccount() || _firstModulusCalculatorStep.Process(bankAccountDetails); }