diff --git a/src/ProtocolBuffers.Test/ServiceTest.cs b/src/ProtocolBuffers.Test/ServiceTest.cs index 8d14f0c353..c6899076db 100644 --- a/src/ProtocolBuffers.Test/ServiceTest.cs +++ b/src/ProtocolBuffers.Test/ServiceTest.cs @@ -71,7 +71,7 @@ namespace Google.ProtocolBuffers { MockRepository mocks = new MockRepository(); FooRequest fooRequest = FooRequest.CreateBuilder().Build(); FooResponse fooResponse = FooResponse.CreateBuilder().Build(); - IRpcController controller = mocks.StrictMock(); + IRpcController controller = mocks.StrictMockWithRemoting(); bool fooCalled = false; @@ -110,10 +110,16 @@ namespace Google.ProtocolBuffers { public void GeneratedStubFooCall() { FooRequest fooRequest = FooRequest.CreateBuilder().Build(); MockRepository mocks = new MockRepository(); - IRpcChannel mockChannel = mocks.StrictMock(); - IRpcController mockController = mocks.StrictMock(); + IRpcChannel mockChannel = mocks.StrictMockWithRemoting(); + IRpcController mockController = mocks.StrictMockWithRemoting(); TestService service = TestService.CreateStub(mockChannel); - Action doneHandler = mocks.StrictMock>(); + bool doneCalled = false; + // TODO(jonskeet): Use Rhino for this (to get ordering) when Mono works with it properly + Action doneHandler = response => { + Assert.IsFalse(doneCalled); + doneCalled = true; + Assert.AreEqual(FooResponse.DefaultInstance, response); + }; using (mocks.Record()) { @@ -123,7 +129,6 @@ namespace Google.ProtocolBuffers { .Constraints(Is.Same(FooDescriptor), Is.Same(mockController), Is.Same(fooRequest), Is.Same(FooResponse.DefaultInstance), Is.Anything()) .Do((CallFooDelegate) ((p1, p2, p3, response, done) => done(response))); - doneHandler.Invoke(FooResponse.DefaultInstance); } service.Foo(mockController, fooRequest, doneHandler); @@ -136,7 +141,7 @@ namespace Google.ProtocolBuffers { MockRepository mocks = new MockRepository(); BarRequest barRequest = BarRequest.CreateBuilder().Build(); BarResponse barResponse = BarResponse.CreateBuilder().Build(); - IRpcController controller = mocks.StrictMock(); + IRpcController controller = mocks.StrictMockWithRemoting(); bool barCalled = false;