diff options
author | 2015-07-20 22:12:53 -0700 | |
---|---|---|
committer | 2015-07-20 22:12:53 -0700 | |
commit | 998eb9bcaf8990a9c7ec2709550fb70c72c430dc (patch) | |
tree | e1729dc9fd4d1c9eaadfa688779a96d44fb2e99b /src/csharp/Grpc.Core.Tests/ClientServerTest.cs | |
parent | 5bbd8186cc1d4b22a8021bdacb5d243c5c621ef3 (diff) |
populate server context
Diffstat (limited to 'src/csharp/Grpc.Core.Tests/ClientServerTest.cs')
-rw-r--r-- | src/csharp/Grpc.Core.Tests/ClientServerTest.cs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/csharp/Grpc.Core.Tests/ClientServerTest.cs b/src/csharp/Grpc.Core.Tests/ClientServerTest.cs index e797dd82f2..05e33f1589 100644 --- a/src/csharp/Grpc.Core.Tests/ClientServerTest.cs +++ b/src/csharp/Grpc.Core.Tests/ClientServerTest.cs @@ -183,6 +183,19 @@ namespace Grpc.Core.Tests } [Test] + public void AsyncUnaryCall_EchoMetadata() + { + var metadata = new Metadata + { + new Metadata.Entry("asciiHeader", "abcdefg"), + new Metadata.Entry("binaryHeader-bin", new byte[] { 1, 2, 3, 0, 0xff } ), + }; + var call = new Call<string, string>(ServiceName, EchoMethod, channel, metadata); + var result = Calls.AsyncUnaryCall(call, "ABC", CancellationToken.None).Result; + Assert.AreEqual("ABC", result); + } + + [Test] public void UnaryCall_DisposedChannel() { channel.Dispose(); @@ -216,10 +229,17 @@ namespace Grpc.Core.Tests private static async Task<string> EchoHandler(ServerCallContext context, string request) { + foreach (Metadata.Entry metadataEntry in context.RequestHeaders) + { + Console.WriteLine("Echoing header " + metadataEntry.Key + " as trailer"); + context.ResponseTrailers.Add(metadataEntry); + } + if (request == "THROW") { throw new Exception("This was thrown on purpose by a test"); } + return request; } |