Ejemplo n.º 1
0
            public DerivedClass2(string str)
            {
                var expression1 = (Expression <Func <object> >)(() => this.Foo);

                var(type, instance) = ClassFinder.FindClass(expression1);

                Assert.AreEqual(typeof(DerivedClass2), type);
                Assert.AreSame(this, instance);
            }
Ejemplo n.º 2
0
        public void FindClass_StaticClosure_TypeInstance()
        {
            var expression1 = (Expression <Func <object> >)(() => MockType1.Bar);
            var expression2 = (Expression <Func <object> >)(() => MockType2.Bar);

            var(type, instance) = ClassFinder.FindClass(expression2);

            Assert.AreEqual(typeof(MockType2), type);
            Assert.IsNull(instance);
        }
Ejemplo n.º 3
0
            public static void AssertBar()
            {
                var expression1 = (Expression <Func <object> >)(() => Bar);
                var expression2 = (Expression <Func <object> >)(() => Bar);

                var(type, instance) = ClassFinder.FindClass(expression2);

                Assert.AreEqual(typeof(MockType1), type);
                Assert.IsNull(instance);
            }
Ejemplo n.º 4
0
            public void AssertFoo()
            {
                var expression1 = (Expression <Func <object> >)(() => Foo);
                var expression2 = (Expression <Func <object> >)(() => Foo);

                var(type, instance) = ClassFinder.FindClass(expression2);

                Assert.AreEqual(typeof(MockType1), type);
                Assert.AreSame(this, instance);
            }
Ejemplo n.º 5
0
        public void FindClass_Variable_TypeInstnce()
        {
            var foo = "fooo";
            var bar = new { bar = "baar" };

            var expression1 = (Expression <Func <object> >)(() => foo);
            var expression2 = (Expression <Func <object> >)(() => bar);

            var(type, instance)   = ClassFinder.FindClass(expression1);
            var(type2, instance2) = ClassFinder.FindClass(expression2);

            Assert.AreEqual(typeof(string), type);
            Assert.AreSame(foo, instance);
        }
Ejemplo n.º 6
0
        public void FindClass_InstanceClosure_TypeInstance()
        {
            var testClass1 = new MockType1();
            var testClass2 = new MockType2();
            var testClass3 = new MockType2();

            var expression1 = (Expression <Func <object> >)(() => testClass1.Foo);
            var expression2 = (Expression <Func <object> >)(() => testClass2.Foo);

            var(type, instance) = ClassFinder.FindClass(expression2);

            Assert.AreEqual(typeof(MockType2), type);
            Assert.AreSame(testClass2, instance);
        }
Ejemplo n.º 7
0
        public void FindClass_BaseDerived_Base()
        {
            var foo1 = new DerivedClass1 {
                Foo = "bar"
            };
            var foo2 = new DerivedClass2 {
                Foo = "baz"
            };

            var expression1 = (Expression <Func <object> >)(() => foo1.Foo);
            var expression2 = (Expression <Func <object> >)(() => foo2.Foo);

            var(type, instance) = ClassFinder.FindClass(expression2);

            Assert.AreEqual(typeof(DerivedClass2), type);
            Assert.AreSame(foo2, instance);
        }