예제 #1
0
        public void UsingReturnAndThenIgnoreArgs()
        {
            IDemo demo = (IDemo)mocks.StrictMock(typeof(IDemo));

            Expect.On(demo).Call(demo.StringArgString(null)).Return("ayende").IgnoreArguments();
            mocks.ReplayAll();
            Assert.Equal("ayende", demo.StringArgString("rahien"));
        }
예제 #2
0
 public void CanSetupResultForMethodAndIgnoreArgs()
 {
     SetupResult.For(demo.StringArgString(null)).Return("Ayende").IgnoreArguments();
     mocks.ReplayAll();
     Assert.Equal("Ayende", demo.StringArgString("a"));
     Assert.Equal("Ayende", demo.StringArgString("b"));
     mocks.VerifyAll();
 }
예제 #3
0
        public void ShouldNotExpect()
        {
            demo.Expect(x => x.StringArgString("Ayende"))
            .Repeat.Never();

            demo.StringArgString("Ayende");

            Assert.Throws <ExpectationViolationException>(
                () => demo.VerifyExpectations());
        }
예제 #4
0
 public void SetupResultWorksWithDynamicMocks()
 {
     SetupResult.For(demo.StringArgString("Ayende")).Return("Rahien");
     mocks.ReplayAll();
     for (int i = 0; i < 43; i++)
     {
         Assert.Equal("Rahien", demo.StringArgString("Ayende"));
         Assert.Null(demo.StringArgString("another"));
     }
 }
예제 #5
0
        public void SetupResultWorksWithDynamicMocks()
        {
            demo.Expect(x => x.StringArgString("Ayende"))
            .Return("Rahien")
            .Repeat.Any();

            for (int i = 0; i < 43; i++)
            {
                Assert.Equal("Rahien", demo.StringArgString("Ayende"));
                Assert.Null(demo.StringArgString("another"));
            }
        }
예제 #6
0
        public void CanSetupResultForMethodAndIgnoreArgs()
        {
            demo.Expect(x => x.StringArgString(null))
            .IgnoreArguments()
            .Return("Ayende")
            .Repeat.Any();

            Assert.Equal("Ayende", demo.StringArgString("a"));
            Assert.Equal("Ayende", demo.StringArgString("b"));

            demo.VerifyAllExpectations();
        }
예제 #7
0
 public void CallbackAndConstraintsOnSameMethod()
 {
     demo.StringArgString("");
     Assert.Throws <InvalidOperationException>("This method has already been set to CallbackExpectation.",
                                               () => LastCall.On(demo).Callback <string>(StringMethod)
                                               .Constraints(Is.Anything()));
 }
예제 #8
0
 public void ShouldNotExpect()
 {
     DoNotExpect.Call(demo.StringArgString("Ayende"));
     mocks.ReplayAll();
     Assert.Throws <ExpectationViolationException>(
         "IDemo.StringArgString(\"Ayende\"); Expected #0, Actual #1.",
         () => demo.StringArgString("Ayende"));
 }
예제 #9
0
        public void UsingReturnAndThenIgnoreArgs()
        {
            IDemo demo = MockRepository.Mock <IDemo>();

            demo.Expect(x => x.StringArgString(null))
            .IgnoreArguments()
            .Return("ayende");

            Assert.Equal("ayende", demo.StringArgString("rahien"));
            demo.VerifyExpectations(true);
        }
예제 #10
0
        public void LastCallConstraints()
        {
            mocks.ReplayAll();            //we aren't using this, because we force an exception, which will be re-thrown on verify()

            MockRepository seperateMocks = new MockRepository();

            demo = (IDemo)seperateMocks.StrictMock(typeof(IDemo));
            demo.StringArgString("");
            LastCall.Constraints(Is.Null());
            LastCall.Return("aaa").Repeat.Twice();
            seperateMocks.ReplayAll();
            Assert.Equal("aaa", demo.StringArgString(null));

            try
            {
                demo.StringArgString("");
                Assert.False(true, "Exception expected");
            }
            catch (Exception e)
            {
                Assert.Equal("IDemo.StringArgString(\"\"); Expected #0, Actual #1.\r\nIDemo.StringArgString(equal to null); Expected #2, Actual #1.", e.Message);
            }
        }
예제 #11
0
        public void LastCallConstraints()
        {
            mocks.ReplayAll();//we aren't using this, because we force an exception, which will be re-thrown on verify()

            MockRepository seperateMocks = new MockRepository();
            demo = (IDemo)seperateMocks.StrictMock(typeof (IDemo));
            demo.StringArgString("");
            LastCall.Constraints(Is.Null());
            LastCall.Return("aaa").Repeat.Twice();
            seperateMocks.ReplayAll();
            Assert.Equal("aaa",demo.StringArgString(null));

            try
            {
                demo.StringArgString("");
                Assert.False(true, "Exception expected");
            }
            catch(Exception e)
            {
                Assert.Equal("IDemo.StringArgString(\"\"); Expected #0, Actual #1.\r\nIDemo.StringArgString(equal to null); Expected #2, Actual #1.",e.Message);
            }
        }