Inheritance: AccessorBase
Ejemplo n.º 1
0
        public void Can_get_field_accessor_from_sub_and_super_types()
        {
            var sub    = new SubAccessor();
            var subGet = StaticAccessors.GetValueGetter <SubAccessor>(typeof(SubAccessor).GetField("SubField"));
            var subSet = StaticAccessors.GetValueSetter <SubAccessor>(typeof(SubAccessor).GetField("SubField"));

            subSet(sub, "sub");
            Assert.That(subGet(sub), Is.EqualTo("sub"));

            var sup    = new AccessorBase();
            var supGet = StaticAccessors.GetValueGetter <AccessorBase>(typeof(AccessorBase).GetField("BaseField"));
            var supSet = StaticAccessors.GetValueSetter <AccessorBase>(typeof(AccessorBase).GetField("BaseField"));

            supSet(sup, "base");
            Assert.That(supGet(sup), Is.EqualTo("base"));
            supSet(sub, "base");
            Assert.That(supGet(sub), Is.EqualTo("base"));
        }
        public void Can_get_field_accessor_from_sub_and_super_types()
        {
            var sub = new SubAccessor();
            var subGet = StaticAccessors.GetValueGetter<SubAccessor>(typeof(SubAccessor).GetFieldInfo("SubField"));
            var subSet = StaticAccessors.GetValueSetter<SubAccessor>(typeof(SubAccessor).GetFieldInfo("SubField"));

            subSet(sub, "sub");
            Assert.That(subGet(sub), Is.EqualTo("sub"));

            var sup = new AccessorBase();
            var supGet = StaticAccessors.GetValueGetter<AccessorBase>(typeof(AccessorBase).GetFieldInfo("BaseField"));
            var supSet = StaticAccessors.GetValueSetter<AccessorBase>(typeof(AccessorBase).GetFieldInfo("BaseField"));

            supSet(sup, "base");
            Assert.That(supGet(sup), Is.EqualTo("base"));
            supSet(sub, "base");
            Assert.That(supGet(sub), Is.EqualTo("base"));
        }
Ejemplo n.º 3
0
        public void Can_get_property_accessor_from_sub_and_super_types()
        {
            var sub    = new SubAccessor();
            var subGet = typeof(SubAccessor).GetProperty("Sub").CreateGetter <SubAccessor>();
            var subSet = typeof(SubAccessor).GetProperty("Sub").CreateSetter <SubAccessor>();

            subSet(sub, "sub");
            Assert.That(subGet(sub), Is.EqualTo("sub"));

            var sup    = new AccessorBase();
            var supGet = typeof(AccessorBase).GetProperty("Base").CreateGetter <AccessorBase>();
            var supSet = typeof(AccessorBase).GetProperty("Base").CreateSetter <AccessorBase>();

            supSet(sup, "base");
            Assert.That(supGet(sup), Is.EqualTo("base"));
            supSet(sub, "base");
            Assert.That(supGet(sub), Is.EqualTo("base"));
        }