public void CallMethodFoo() { MockRepository mocks = new MockRepository(); FooRequest fooRequest = FooRequest.CreateBuilder().Build(); FooResponse fooResponse = FooResponse.CreateBuilder().Build(); IRpcController controller = mocks.StrictMock <IRpcController>(); bool fooCalled = false; TestService service = new TestServiceImpl((request, responseAction) => { Assert.AreSame(fooRequest, request); fooCalled = true; responseAction(fooResponse); }, null, controller); bool doneHandlerCalled = false; Action <IMessage> doneHandler = (response => { Assert.AreSame(fooResponse, response); doneHandlerCalled = true; }); using (mocks.Record()) { // No mock interactions to record } service.CallMethod(FooDescriptor, controller, fooRequest, doneHandler); Assert.IsTrue(doneHandlerCalled); Assert.IsTrue(fooCalled); mocks.VerifyAll(); }
public void CallMethodFoo() { MockRepository mocks = new MockRepository(); FooRequest fooRequest = FooRequest.CreateBuilder().Build(); FooResponse fooResponse = FooResponse.CreateBuilder().Build(); IRpcController controller = mocks.StrictMock<IRpcController>(); bool fooCalled = false; TestService service = new TestServiceImpl((request, responseAction) => { Assert.AreSame(fooRequest, request); fooCalled = true; responseAction(fooResponse); }, null, controller); bool doneHandlerCalled = false; Action<IMessage> doneHandler = (response => { Assert.AreSame(fooResponse, response); doneHandlerCalled = true; }); using (mocks.Record()) { // No mock interactions to record } service.CallMethod(FooDescriptor, controller, fooRequest, doneHandler); Assert.IsTrue(doneHandlerCalled); Assert.IsTrue(fooCalled); mocks.VerifyAll(); }
public void GetResponsePrototype() { TestService service = new TestServiceImpl(); Assert.AreSame(service.GetResponsePrototype(FooDescriptor), FooResponse.DefaultInstance); Assert.AreSame(service.GetResponsePrototype(BarDescriptor), BarResponse.DefaultInstance); }
public void GetResponsePrototype() { TestGenericService service = new TestServiceImpl(); Assert.AreSame(service.GetResponsePrototype(FooDescriptor), FooResponse.DefaultInstance); Assert.AreSame(service.GetResponsePrototype(BarDescriptor), BarResponse.DefaultInstance); }
public void CallMethodFoo() { FooRequest fooRequest = FooRequest.CreateBuilder().Build(); FooResponse fooResponse = FooResponse.CreateBuilder().Build(); IRpcController controller = new RpcTestController(); bool fooCalled = false; TestGenericService service = new TestServiceImpl((request, responseAction) => { Assert.AreSame(fooRequest, request); fooCalled = true; responseAction(fooResponse); }, null, controller); bool doneHandlerCalled = false; Action <IMessage> doneHandler = (response => { Assert.AreSame(fooResponse, response); doneHandlerCalled = true; }); service.CallMethod(FooDescriptor, controller, fooRequest, doneHandler); Assert.IsTrue(doneHandlerCalled); Assert.IsTrue(fooCalled); }
public void CallMethodBar() { BarRequest barRequest = BarRequest.CreateBuilder().Build(); BarResponse barResponse = BarResponse.CreateBuilder().Build(); IRpcController controller = new RpcTestController(); bool barCalled = false; TestGenericService service = new TestServiceImpl(null, (request, responseAction) => { Assert.AreSame(barRequest, request); barCalled = true; responseAction(barResponse); }, controller); bool doneHandlerCalled = false; Action <IMessage> doneHandler = (response => { Assert.AreSame(barResponse, response); doneHandlerCalled = true; }); service.CallMethod(BarDescriptor, controller, barRequest, doneHandler); Assert.IsTrue(doneHandlerCalled); Assert.IsTrue(barCalled); }
/// <summary> /// 拦截异步方法 /// </summary> /// <returns></returns> public async Task Test() { var generator = new ProxyGenerator(); var impl = new TestServiceImpl(); var proxy = generator.CreateInterfaceProxyWithTarget <ITestService>(impl, new TestAsyncTimingInterceptor().ToInterceptor()); var result = await proxy.GetData("1,2,3,4,5,6"); Console.WriteLine(string.Join('-', result)); }
static void Main (string [] args) { TestServiceImpl impl = new TestServiceImpl (); RemotingServices.Marshal (impl, "test"); TcpChannel chan = new TcpChannel (8089); #if NET_2_0 ChannelServices.RegisterChannel (chan, false); #else ChannelServices.RegisterChannel (chan); #endif Console.ReadLine (); ChannelServices.UnregisterChannel (chan); }
public ChannelContext Create(NamedPipeServerOptions options) { var impl = new TestServiceImpl(); var server = new NamedPipeServer(_pipeName, options); TestService.BindService(server.ServiceBinder, impl); server.Start(); return(new ChannelContext { Impl = impl, Client = CreateClient(), OnDispose = () => server.Kill() }); }
public override ChannelContext Create() { var impl = new TestServiceImpl(); var server = new Server(Options) { Services = { TestService.BindService(impl) }, Ports = { new ServerPort("localhost", 0, ServerCredentials.Insecure) } }; server.Start(); _port = server.Ports.First().BoundPort; return(new ChannelContext { Impl = impl, Client = CreateClient(), OnDispose = () => server.KillAsync() }); }
public void CallMethodFoo() { FooRequest fooRequest = FooRequest.CreateBuilder().Build(); FooResponse fooResponse = FooResponse.CreateBuilder().Build(); IRpcController controller = new RpcTestController(); bool fooCalled = false; TestGenericService service = new TestServiceImpl((request, responseAction) => { Assert.AreSame(fooRequest, request); fooCalled = true; responseAction(fooResponse); }, null, controller); bool doneHandlerCalled = false; Action<IMessage> doneHandler = (response => { Assert.AreSame(fooResponse, response); doneHandlerCalled = true; }); service.CallMethod(FooDescriptor, controller, fooRequest, doneHandler); Assert.IsTrue(doneHandlerCalled); Assert.IsTrue(fooCalled); }
public void CallMethodBar() { BarRequest barRequest = BarRequest.CreateBuilder().Build(); BarResponse barResponse = BarResponse.CreateBuilder().Build(); IRpcController controller = new RpcTestController(); bool barCalled = false; TestGenericService service = new TestServiceImpl(null, (request, responseAction) => { Assert.AreSame(barRequest, request); barCalled = true; responseAction(barResponse); }, controller); bool doneHandlerCalled = false; Action<IMessage> doneHandler = (response => { Assert.AreSame(barResponse, response); doneHandlerCalled = true; }); service.CallMethod(BarDescriptor, controller, barRequest, doneHandler); Assert.IsTrue(doneHandlerCalled); Assert.IsTrue(barCalled); }