public void CanReadPublicProperty()
        {
            var x = new TestClass()
            {
                MyInt = 1
            };

            GetterDelegateCache <TestClass> .Read("MyInt", x).ShouldBe(1);
        }
        public void CanReadReadOnlyProperty()
        {
            var x = new TestClass()
            {
                MyInt = 2
            };

            GetterDelegateCache <TestClass> .Read("MyReadOnlyInt", x).ShouldBe(2);
        }
        public void CanReadReadOnlyPropertyByOrdinal()
        {
            var x = new TestClass()
            {
                MyInt = 4
            };
            var ordinal = GetterDelegateCache <TestClass> .OrdinalLookup["MyReadOnlyInt"];

            GetterDelegateCache <TestClass> .Read(ordinal, x).ShouldBe(4);
        }
        public void CanReadByOrdinal()
        {
            var x = new TestClass()
            {
                MyInt = 3
            };
            var ordinal = GetterDelegateCache <TestClass> .OrdinalLookup["MyInt"];

            GetterDelegateCache <TestClass> .Read(ordinal, x).ShouldBe(3);
        }