public RuleValidatorContext <Contact, IEnumerable> BuildContextForAliases(PopulateListAction action) { Contact contact = new Contact(); switch (action) { case PopulateListAction.Null: contact.Aliases = null; break; case PopulateListAction.Empty: contact.Aliases = new List <string>(); break; case PopulateListAction.NonUnique: contact.Aliases = NonUniqueStrings(); break; default: contact.Aliases = UniqueStrings(); break; } var context = new RuleValidatorContext <Contact, IEnumerable>(contact, "Aliases", contact.Aliases, null, ValidationLevelType.Error, null); return(context); }
public bool CountLessThan_Expression_IsValid(PopulateListAction populateListAction, int val) { //Create Validator var validator = new CountLessThan <Contact, IEnumerable>(val); RuleValidatorContext <Contact, IEnumerable> context = BuildContextForAliases(populateListAction); var notification = new ValidationNotification(); //Validate the validator only, return true of no error returned return(validator.Validate(context, null, notification)); }
public bool ItemsAreUnique_IsValid(PopulateListAction action) { //Create Validator var validator = new ItemsAreUnique <Contact, IEnumerable>(); var context = BuildContextForAliases(action); var notification = new ValidationNotification(); //Validate the validator only, return true of no error returned return(validator.Validate(context, null, notification)); }