public void SimpleProperty() { const string Value = "hello!"; var count = 0; var builder = new ValidatorBuilder <object>(); builder .ForType <Test1>() .AddProperty(t => t.Instance); var test = new Test1 { Instance = new Test2 { Member = Value, }, }; builder.AddConstraint(_ => new DelegateConstraint(value => { if (value is string) { Assert.Equal(Value, value); count++; } return(true); })); var validator = builder.Build(); var context = new TestValidationContext(); validator.Validate(test, context.Context); Assert.Equal(1, count); }