diff options
Diffstat (limited to 'src/csharp/Grpc.Core.Tests')
-rw-r--r-- | src/csharp/Grpc.Core.Tests/ClientServerTest.cs | 14 | ||||
-rw-r--r-- | src/csharp/Grpc.Core.Tests/Grpc.Core.Tests.csproj | 4 | ||||
-rw-r--r-- | src/csharp/Grpc.Core.Tests/Internal/MetadataArraySafeHandleTest.cs | 62 |
3 files changed, 74 insertions, 6 deletions
diff --git a/src/csharp/Grpc.Core.Tests/ClientServerTest.cs b/src/csharp/Grpc.Core.Tests/ClientServerTest.cs index e73159b350..807f5a6ded 100644 --- a/src/csharp/Grpc.Core.Tests/ClientServerTest.cs +++ b/src/csharp/Grpc.Core.Tests/ClientServerTest.cs @@ -46,6 +46,8 @@ namespace Grpc.Core.Tests { string host = "localhost"; + string serviceName = "/tests.Test"; + Method<string, string> unaryEchoStringMethod = new Method<string, string>( MethodType.Unary, "/tests.Test/UnaryEchoString", @@ -69,7 +71,7 @@ namespace Grpc.Core.Tests { Server server = new Server(); server.AddServiceDefinition( - ServerServiceDefinition.CreateBuilder("someService") + ServerServiceDefinition.CreateBuilder(serviceName) .AddMethod(unaryEchoStringMethod, HandleUnaryEchoString).Build()); int port = server.AddPort(host + ":0"); @@ -77,7 +79,7 @@ namespace Grpc.Core.Tests using (Channel channel = new Channel(host + ":" + port)) { - var call = new Call<string, string>(unaryEchoStringMethod, channel); + var call = new Call<string, string>(serviceName, unaryEchoStringMethod, channel, Metadata.Empty); Assert.AreEqual("ABC", Calls.BlockingUnaryCall(call, "ABC", default(CancellationToken))); @@ -92,7 +94,7 @@ namespace Grpc.Core.Tests { Server server = new Server(); server.AddServiceDefinition( - ServerServiceDefinition.CreateBuilder("someService") + ServerServiceDefinition.CreateBuilder(serviceName) .AddMethod(unaryEchoStringMethod, HandleUnaryEchoString).Build()); int port = server.AddPort(host + ":0"); @@ -100,7 +102,7 @@ namespace Grpc.Core.Tests using (Channel channel = new Channel(host + ":" + port)) { - var call = new Call<string, string>(unaryEchoStringMethod, channel); + var call = new Call<string, string>(serviceName, unaryEchoStringMethod, channel, Metadata.Empty); BenchmarkUtil.RunBenchmark(100, 1000, () => { Calls.BlockingUnaryCall(call, "ABC", default(CancellationToken)); }); } @@ -113,14 +115,14 @@ namespace Grpc.Core.Tests { Server server = new Server(); server.AddServiceDefinition( - ServerServiceDefinition.CreateBuilder("someService").Build()); + ServerServiceDefinition.CreateBuilder(serviceName).Build()); int port = server.AddPort(host + ":0"); server.Start(); using (Channel channel = new Channel(host + ":" + port)) { - var call = new Call<string, string>(unaryEchoStringMethod, channel); + var call = new Call<string, string>(serviceName, unaryEchoStringMethod, channel, Metadata.Empty); try { diff --git a/src/csharp/Grpc.Core.Tests/Grpc.Core.Tests.csproj b/src/csharp/Grpc.Core.Tests/Grpc.Core.Tests.csproj index a365320f05..eac8d16fb1 100644 --- a/src/csharp/Grpc.Core.Tests/Grpc.Core.Tests.csproj +++ b/src/csharp/Grpc.Core.Tests/Grpc.Core.Tests.csproj @@ -42,6 +42,7 @@ <Compile Include="GrpcEnvironmentTest.cs" /> <Compile Include="TimespecTest.cs" /> <Compile Include="PInvokeTest.cs" /> + <Compile Include="Internal\MetadataArraySafeHandleTest.cs" /> </ItemGroup> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> <ItemGroup> @@ -56,4 +57,7 @@ <ItemGroup> <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" /> </ItemGroup> + <ItemGroup> + <Folder Include="Internal\" /> + </ItemGroup> </Project>
\ No newline at end of file diff --git a/src/csharp/Grpc.Core.Tests/Internal/MetadataArraySafeHandleTest.cs b/src/csharp/Grpc.Core.Tests/Internal/MetadataArraySafeHandleTest.cs new file mode 100644 index 0000000000..2f6013483d --- /dev/null +++ b/src/csharp/Grpc.Core.Tests/Internal/MetadataArraySafeHandleTest.cs @@ -0,0 +1,62 @@ +#region Copyright notice and license + +// Copyright 2015, Google Inc. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#endregion + +using System; +using Grpc.Core; +using Grpc.Core.Internal; +using Grpc.Core.Utils; +using NUnit.Framework; + +namespace Grpc.Core.Internal.Tests +{ + public class MetadataArraySafeHandleTest + { + [Test] + public void CreateEmptyAndDestroy() + { + var metadata = Metadata.CreateBuilder().Build(); + var nativeMetadata = MetadataArraySafeHandle.Create(metadata); + nativeMetadata.Dispose(); + } + + [Test] + public void CreateAndDestroy() + { + var metadata = Metadata.CreateBuilder() + .Add(new Metadata.MetadataEntry("host", "somehost")) + .Add(new Metadata.MetadataEntry("header2", "header value")).Build(); + var nativeMetadata = MetadataArraySafeHandle.Create(metadata); + nativeMetadata.Dispose(); + } + } +} |