public static IBAN Create(string ibanNumber) { if (ibanNumber == null) { throw new ArgumentNullException("ibanNumber"); } var specification = new IBANSpecification(); if (specification.IsSatisfiedBy(ibanNumber)) { return new IBAN(ibanNumber); } throw new ArgumentException(string.Format("IBAN '{0}' doesn't satisfy specification.", ibanNumber), "ibanNumber"); }
public static bool TryCreate(string ibanNumber, out IBAN result, out string failureReason) { var specification = new IBANSpecification(); if (specification.IsSatisfiedBy(ibanNumber)) { result = new IBAN(ibanNumber); failureReason = string.Empty; return true; } result = null; failureReason = specification.GetReasonsForDissatisfactionSeparatedWithNewLine(); return false; }
private static void AssertSatisfiedSpecification(string value) { var specification = new IBANSpecification(); Assert.IsTrue(specification.IsSatisfiedBy(value)); Assert.IsTrue(string.IsNullOrWhiteSpace(specification.GetReasonsForDissatisfactionSeparatedWithNewLine())); }