Example #1
0
        public void VisitMemberListBinding_Unchanged()
        {
            MemberListBinding memberListBinding = ExpressionInstanceCreator.CreateMemberListBinding();

            Expect.Call(InvokeVisitMethod("VisitElementInitList", memberListBinding.Initializers)).Return(memberListBinding.Initializers);
            var result = (MemberListBinding)InvokeAndCheckVisitObject("VisitMemberListBinding", memberListBinding);

            Assert.That(result, Is.SameAs(memberListBinding));
        }
Example #2
0
        public void VisitMemberBinding_Delegation_ListBinding()
        {
            MemberListBinding memberListBinding = ExpressionInstanceCreator.CreateMemberListBinding();

            Expect.Call(InvokeVisitMethod("VisitMemberBinding", memberListBinding)).CallOriginalMethod(OriginalCallOptions.CreateExpectation);
            Expect.Call(InvokeVisitMethod("VisitMemberListBinding", memberListBinding)).Return(memberListBinding);

            MockRepository.ReplayAll();
            object result = InvokeVisitMethod("VisitMemberBinding", memberListBinding);

            MockRepository.VerifyAll();

            Assert.That(result, Is.SameAs(memberListBinding));
        }
Example #3
0
        public void VisitMemberListBinding_Changed()
        {
            MemberListBinding memberListBinding = ExpressionInstanceCreator.CreateMemberListBinding();
            var addMethod = ((FieldInfo)memberListBinding.Member).FieldType.GetMethod("Add");
            ReadOnlyCollection <ElementInit> newInitializers = new List <ElementInit> {
                Expression.ElementInit(addMethod, Expression.Constant(2765865))
            }.AsReadOnly();

            Expect.Call(InvokeVisitMethod("VisitElementInitList", memberListBinding.Initializers)).Return(newInitializers);
            var result = (MemberListBinding)InvokeAndCheckVisitObject("VisitMemberListBinding", memberListBinding);

            Assert.That(result, Is.Not.SameAs(memberListBinding));
            Assert.That(result.Initializers, Is.EqualTo(newInitializers));
            Assert.That(result.BindingType, Is.EqualTo(memberListBinding.BindingType));
            Assert.That(result.Member, Is.EqualTo(memberListBinding.Member));
        }