//private static void CreateSimpleServiceStub<TService>(TService serviceImpl, IGrpcMethodBinder methodBinder) where TService : class //{ // var builder = new GrpcServiceStubBuilder<TService>(new ProtobufSerializer()); // var hostMock = new Mock<IRpcServiceHostImpl>(MockBehavior.Strict); // var serviceImplProviderMock = new Mock<IServiceImplProvider>(); // serviceImplProviderMock.Setup(p => p.GetServiceImpl<TService>(It.IsAny<RpcObjectId>())).Returns(serviceImpl); // hostMock.Setup(p => p.ServiceImplProvider).Returns(serviceImplProviderMock.Object); // hostMock.Setup(p => p.CallInterceptors).Returns(ImmutableArray<RpcHostCallInterceptor>.Empty); // builder.GenerateOperationHandlers(hostMock.Object, methodBinder); //} private static void CreateSimpleServiceStub <TService>(TService serviceImpl, IGrpcMethodBinder methodBinder) where TService : class { var builder = new GrpcServiceStubBuilder <TService>(new RpcServiceOptions <TService> { Serializer = new ProtobufRpcSerializer() }); var hostMock = new Mock <IRpcServerCore>(MockBehavior.Strict); var servicePublisherMock = new Mock <IRpcServicePublisher>(MockBehavior.Strict); var serviceDefinitionsProviderMock = new Mock <IRpcServiceDefinitionsProvider>(MockBehavior.Strict); serviceDefinitionsProviderMock.Setup(p => p.GetServiceOptions(It.IsAny <Type>())).Returns((RpcServerOptions)null); var serviceImplProviderMock = new Mock <IRpcServiceActivator>(MockBehavior.Strict); serviceImplProviderMock.Setup(p => p.GetActivatedService <TService>(It.IsAny <IServiceProvider>(), It.IsAny <RpcObjectId>())).Returns(new ActivatedService <TService>(serviceImpl, null)); hostMock.Setup(h => h.ServicePublisher).Returns(servicePublisherMock.Object); hostMock.Setup(h => h.ServiceDefinitionsProvider).Returns(serviceDefinitionsProviderMock.Object); hostMock.Setup(h => h.ServiceActivator).Returns(serviceImplProviderMock.Object); hostMock.Setup(h => h.CallInterceptors).Returns(ImmutableArrayList <RpcServerCallInterceptor> .Empty); hostMock.Setup(h => h.ServiceProvider).Returns((IServiceProvider)null); hostMock.Setup(h => h.AllowAutoPublish).Returns(false); hostMock.Setup(h => h.Serializer).Returns(DefaultSerializer); hostMock.Setup(h => h.CustomFaultHandler).Returns((RpcServerFaultHandler)null); hostMock.Setup(p => p.HasContextAccessor).Returns(false); hostMock.Setup(p => p.LoggerFactory).Returns(NullLoggerFactory.Instance); builder.GenerateOperationHandlers(hostMock.Object, methodBinder); }
public IReadOnlyList <object> GenerateMethodStubs <TService>(IRpcServerCore rpcServer) where TService : class { var builder = new GrpcServiceStubBuilder <TService>(RpcBuilderUtil.GetServiceInfoFromType(typeof(TService)), null); var binder = new TestGrpcMethodBinder(); builder.GenerateOperationHandlers(rpcServer, binder); return(binder.stubs); }