public void Validate_a_ruleset_with_invalid_data_and_oninvalid_delegate_and_fieldcompare() { RuleSet rs = new RuleSet() { OnInvalid = (prop) => { //do nothing }, Rules = new List<Rule>() { new Rule() { Name = "Test rule", FieldName = "StringArray", FieldPath = "TestEntity", FieldComparisonList = new List<FieldComparison>() { new FieldComparison() { FieldName = "AnotherSub", FieldPath = "SubEntity" } } } } }; TestEntity t = new TestEntity() { StringArray = new string[] {"valor1", "valor1"} }; SubEntity t1 = new SubEntity() { AnotherSub = new string[] {"valor1", "valor2"} }; bool validationResult = rs.Run(t, t1); Assert.IsFalse(validationResult); }
public void Validate_a_ruleset_with_invalid_data_and_oninvalid_delegate_and_regex() { RuleSet rs = new RuleSet() { OnInvalid = (prop) => { //do nothing }, Rules = new List<Rule>() { new Rule() { Name = "Test rule", ValidationExpression = "^.*TEST.*$", FieldName = "TestProp", FieldPath = "TestEntity.SubClassArray", ArrayIndex = 0 } } }; TestEntity t = new TestEntity() { SubClassArray = new SubEntity[] { new SubEntity() { TestProp = "this is a not a...." } } }; bool validationResult = rs.Run(t); Assert.IsFalse(validationResult); }