public async Task AddingASimpleServiceImplementationHostsAndHandlesRequests()
        {
            //arrange
            var serverHostBuilder = new HostBuilder()
                                    .ConfigureServices((hostContext, services) =>
            {
                services.AddSingleton <IService, EchoValueService>();
                services.AddGrpcServer <DumbPipeServiceImplementation>(new[] { new ServerPort(_testRunValues.Host, _testRunValues.Port, _testRunValues.ServerCredentials) });
            });

            var cts            = new CancellationTokenSource();
            var serverHostTask = serverHostBuilder.RunConsoleAsync(cts.Token);

            var request = new SampleRequest {
                Value = 1
            };

            //act
            var response = await _client.SendAsync(request);

            //assert
            Assert.Equal(request.Value, response.Value);

            //clean up
            cts.Cancel();
            await serverHostTask;
        }
        public async Task AddingAPreConfiguredServerHostsAndHandlesRequests()
        {
            //arrange
            var serverHostBuilder = new HostBuilder()
                                    .ConfigureServices((hostContext, services) =>
            {
                services.AddGrpcServer(_server);
            });

            var cts            = new CancellationTokenSource();
            var serverHostTask = serverHostBuilder.RunConsoleAsync(cts.Token);

            var request = new SampleRequest {
                Value = 1
            };

            //act
            var response = await _client.SendAsync(request);

            //assert
            Assert.Equal(request.Value, response.Value);

            //clean up
            cts.Cancel();
            await serverHostTask;
        }
        public async Task ReferenceImplementationWorksAsUsualWithSampleTestService()
        {
            //arrange
            var request = new SampleRequest {
                Value = 1
            };

            //act
            var response = await _client.SendAsync(request);

            //assert
            Assert.Equal(request.Value, response.Value);
        }
Пример #4
0
        public async Task <IActionResult> MakeOneRequestAsync(int value, CancellationToken ct)
        {
            var response = await _client.SendAsync(new SampleRequest { Value = value }, cancellationToken : ct);

            return(Ok(new { value = response.Value }));
        }