示例#1
0
        public void LastCallCallOriginalMethod()
        {
            CallOriginalMethodFodder comf1 = (CallOriginalMethodFodder)mocks.DynamicMock(typeof(CallOriginalMethodFodder));
            CallOriginalMethodFodder comf2 = (CallOriginalMethodFodder)mocks.DynamicMock(typeof(CallOriginalMethodFodder));

            comf2.TheMethod();
            LastCall.CallOriginalMethod(OriginalCallOptions.CreateExpectation);

            mocks.ReplayAll();

            comf1.TheMethod();
            Assert.Equal(false, comf1.OriginalMethodCalled);

            comf2.TheMethod();
            Assert.Equal(true, comf2.OriginalMethodCalled);
        }
示例#2
0
        public void LastCallOriginalMethod_WithExpectation()
        {
            MockRepository           mockRepository = new MockRepository();
            CallOriginalMethodFodder comf1          = (CallOriginalMethodFodder)mockRepository.DynamicMock(typeof(CallOriginalMethodFodder));
            CallOriginalMethodFodder comf2          = (CallOriginalMethodFodder)mockRepository.DynamicMock(typeof(CallOriginalMethodFodder));

            comf2.TheMethod();
            LastCall.CallOriginalMethod(OriginalCallOptions.CreateExpectation)
            .Repeat.Twice();

            mockRepository.ReplayAll();

            comf1.TheMethod();
            Assert.Equal(false, comf1.OriginalMethodCalled);

            comf2.TheMethod();
            Assert.Equal(true, comf2.OriginalMethodCalled);

            Assert.Throws <ExpectationViolationException>("CallOriginalMethodFodder.TheMethod(); Expected #2, Actual #1.",
                                                          () => mockRepository.VerifyAll());
        }