public void Should_create_multiple_validators() { validator.RuleFor(x => x.Surname) .NotNull() .NotEqual("foo"); validator.Single().Components.Count().ShouldEqual(2); }
public void Nested_dependent_rules() { var validator = new TestValidator(); validator.RuleFor(x => x.Surname).NotNull() .DependentRules(() => { validator.RuleFor(x => x.Forename).NotNull().DependentRules(() => { validator.RuleFor(x => x.Forename).NotEqual("foo"); }); }); var results = validator.Validate(new Person { Surname = "foo" }); results.Errors.Count.ShouldEqual(1); results.Errors.Single().PropertyName.ShouldEqual("Forename"); var rule = (PropertyRule)validator.Single(); rule.DependentRules.Count.ShouldEqual(1); ((PropertyRule)rule.DependentRules[0]).DependentRules.Count.ShouldEqual(1); }