Exemplo n.º 1
0
        public async Task SayHelloServerStreamingTest()
        {
            var svc           = new TestServices(NullLoggerFactory.Instance);
            var cts           = new CancellationTokenSource();
            var callContext   = UnitTestServiceContext.Create(cancellationToken: cts.Token);
            var requestStream = new AsyncStreamRequestReader <HelloRequest>(callContext);
            var request       = new HelloRequest()
            {
                Name = "Message"
            };
            var streamWriter = new AsyncStreamRequestWriter <HelloReply>(callContext);

            svc.SayHelloServerStreaming(request, streamWriter, callContext);

            cts.Cancel();
            await Task.Delay(1000);

            streamWriter.ChannelWriter.Complete();
            await foreach (var item in streamWriter.ChannelReader.ReadAllAsync())
            {
                _testOutputHelper.WriteLine(item.Message);
            }
        }