Пример #1
0
 public void DifferentEndpoint_DifferentChannel()
 {
     var pool = new ChannelPool(EmptyScopes);
     using (TestServiceFixture fixture1 = new TestServiceFixture(), fixture2 = new TestServiceFixture())
     {
         var channel1 = pool.GetChannel(fixture1.Endpoint);
         var channel2 = pool.GetChannel(fixture2.Endpoint);
         Assert.NotSame(channel1, channel2);
     }
 }
Пример #2
0
 public void SameEndpoint_SameChannel()
 {
     var pool = new ChannelPool(EmptyScopes);
     using (var fixture = new TestServiceFixture())
     {
         var channel1 = pool.GetChannel(fixture.Endpoint);
         var channel2 = pool.GetChannel(fixture.Endpoint);
         Assert.Same(channel1, channel2);                
     }
 }
Пример #3
0
 public async Task ShutdownAsync_ShutsDownChannel()
 {
     var pool = new ChannelPool(EmptyScopes);
     using (var fixture = new TestServiceFixture())
     {
         var channel = pool.GetChannel(fixture.Endpoint);
         Assert.NotEqual(ChannelState.Shutdown, channel.State);
         await pool.ShutdownChannelsAsync();
         Assert.Equal(ChannelState.Shutdown, channel.State);
     }
 }
        public void DifferentEndpoint_DifferentCallInvoker()
        {
            var pool    = new GcpCallInvokerPool(EmptyScopes);
            var options = new[] { new ChannelOption(ChannelOptions.PrimaryUserAgentString, "abc") };

            using (TestServiceFixture fixture1 = new TestServiceFixture(), fixture2 = new TestServiceFixture())
            {
                var callInvoker1 = pool.GetCallInvoker(fixture1.Endpoint, options);
                var callInvoker2 = pool.GetCallInvoker(fixture2.Endpoint, options);
                Assert.NotSame(callInvoker1, callInvoker2);
            }
        }
        public void SameEndpointAndOptions_SameCallInvoker()
        {
            var pool    = new GcpCallInvokerPool(EmptyScopes);
            var options = new[] { new ChannelOption(ChannelOptions.PrimaryUserAgentString, "abc") };

            using (var fixture = new TestServiceFixture())
            {
                var callInvoker1 = pool.GetCallInvoker(fixture.Endpoint, options);
                var callInvoker2 = pool.GetCallInvoker(fixture.Endpoint, options);
                Assert.Same(callInvoker1, callInvoker2);
            }
        }
Пример #6
0
 public void ShutdownAsync_EmptiesPool()
 {
     var pool = new ChannelPool(EmptyScopes);
     using (var fixture = new TestServiceFixture())
     {
         var channel1 = pool.GetChannel(fixture.Endpoint);
         // Note: *not* waiting for this to complete.
         pool.ShutdownChannelsAsync();
         var channel2 = pool.GetChannel(fixture.Endpoint);
         Assert.NotSame(channel1, channel2);
     }
 }
        public void ShutdownAsync_EmptiesPool()
        {
            var pool = new GcpCallInvokerPool(EmptyScopes);

            using (var fixture = new TestServiceFixture())
            {
                var callInvoker1 = pool.GetCallInvoker(fixture.Endpoint);
                // Note: *not* waiting for this to complete.
                pool.ShutdownChannelsAsync();
                var callInvoker2 = pool.GetCallInvoker(fixture.Endpoint);
                Assert.NotSame(callInvoker1, callInvoker2);
            }
        }
Пример #8
0
        public void SameEndpointAndEqualOptions_SameCallInvoker()
        {
            var pool     = new GcpCallInvokerPool(EmptyScopes);
            var options1 = GrpcChannelOptions.Empty.WithPrimaryUserAgent("abc");
            var options2 = GrpcChannelOptions.Empty.WithPrimaryUserAgent("abc");

            using (var fixture = new TestServiceFixture())
            {
                var callInvoker1 = pool.GetCallInvoker(fixture.Endpoint, options1);
                var callInvoker2 = pool.GetCallInvoker(fixture.Endpoint, options2);
                Assert.Same(callInvoker1, callInvoker2);
            }
        }
        public void DifferentOptions_DifferentCallInvoker()
        {
            var pool     = new GcpCallInvokerPool(EmptyScopes);
            var options1 = new[] { new ChannelOption(ChannelOptions.PrimaryUserAgentString, "abc") };
            var options2 = new[] { new ChannelOption(ChannelOptions.PrimaryUserAgentString, "def") };

            using (var fixture = new TestServiceFixture())
            {
                var callInvoker1 = pool.GetCallInvoker(fixture.Endpoint, options1);
                var callInvoker2 = pool.GetCallInvoker(fixture.Endpoint, options2);
                Assert.NotSame(callInvoker1, callInvoker2);
                var callInvoker3 = pool.GetCallInvoker(fixture.Endpoint);
                Assert.NotSame(callInvoker1, callInvoker3);
            }
        }