Beispiel #1
0
        public void rule_registration_is_idempotent()
        {
            var rules = new AccessorRules();
            rules.Add<Target1>(x => x.Age, new ColorRule("red"));
            rules.Add<Target1>(x => x.Age, new ColorRule("red"));
            rules.Add<Target1>(x => x.Age, new ColorRule("red"));

            rules.AllRulesFor<Target1, IRule>(x => x.Age)
                .Single().ShouldEqual(new ColorRule("red"));
        }
        public void rule_registration_is_idempotent()
        {
            var rules = new AccessorRules();

            rules.Add <Target1>(x => x.Age, new ColorRule("red"));
            rules.Add <Target1>(x => x.Age, new ColorRule("red"));
            rules.Add <Target1>(x => x.Age, new ColorRule("red"));

            rules.AllRulesFor <Target1, IRule>(x => x.Age)
            .Single().ShouldEqual(new ColorRule("red"));
        }
Beispiel #3
0
        public void returns_all_rules_of_a_type()
        {
            var rules = new AccessorRules();
            rules.Add<Target1>(x => x.Name, new ColorRule("red"));
            rules.Add<Target1>(x => x.Name, new ColorRule("green"));
            rules.Add<Target1>(x => x.Name, new ColorRule("blue"));
            rules.Add<Target1>(x => x.Name, new FooPolicy());
            rules.Add<Target1>(x => x.Name, new BarPolicy());

            rules.AllRulesFor<Target1, IRule>(x => x.Name).ShouldHaveTheSameElementsAs(
                new ColorRule("red"), new ColorRule("green"), new ColorRule("blue"));
        }
        public void returns_all_rules_of_a_type()
        {
            var rules = new AccessorRules();

            rules.Add <Target1>(x => x.Name, new ColorRule("red"));
            rules.Add <Target1>(x => x.Name, new ColorRule("green"));
            rules.Add <Target1>(x => x.Name, new ColorRule("blue"));
            rules.Add <Target1>(x => x.Name, new FooPolicy());
            rules.Add <Target1>(x => x.Name, new BarPolicy());

            rules.AllRulesFor <Target1, IRule>(x => x.Name).ShouldHaveTheSameElementsAs(
                new ColorRule("red"), new ColorRule("green"), new ColorRule("blue"));
        }
 public IEnumerable <IFieldValidationRule> RulesFor(PropertyInfo property)
 {
     return(_rules.AllRulesFor <IFieldValidationRule>(new SingleProperty(property)));
 }
 public bool Matches(ElementRequest subject)
 {
     return(_rules.AllRulesFor <IElementTagOverride>(subject.Accessor).Any(x => x.Category == _category && x.Profile == _profile));
 }