Beispiel #1
0
        public void add_and_retrieve_rules_by_accessor()
        {
            var rules = new AccessorRules();
            rules.Add<Target1>(x => x.Name, new FooRule());
            rules.Add<Target2>(x => x.Name, new BarRule());

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

            rules.FirstRule<Target1, IRule>(x => x.Name).ShouldBeOfType<FooRule>();
            rules.FirstRule<Target2, IRule>(x => x.Name).ShouldBeOfType<BarRule>();

            rules.FirstRule<Target1, IRule>(x => x.Age).ShouldBeOfType<ColorRule>().Color.ShouldEqual("red");
            rules.FirstRule<Target2, IRule>(x => x.Age).ShouldBeOfType<ColorRule>().Color.ShouldEqual("green");
        }
        public void add_and_retrieve_rules_by_accessor()
        {
            var rules = new AccessorRules();

            rules.Add <Target1>(x => x.Name, new FooRule());
            rules.Add <Target2>(x => x.Name, new BarRule());

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

            rules.FirstRule <Target1, IRule>(x => x.Name).ShouldBeOfType <FooRule>();
            rules.FirstRule <Target2, IRule>(x => x.Name).ShouldBeOfType <BarRule>();

            rules.FirstRule <Target1, IRule>(x => x.Age).ShouldBeOfType <ColorRule>().Color.ShouldEqual("red");
            rules.FirstRule <Target2, IRule>(x => x.Age).ShouldBeOfType <ColorRule>().Color.ShouldEqual("green");
        }