1 /*
2  * Copyright 2016 The gRPC Authors
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package io.grpc.testing.integration;
18 
19 import io.grpc.ManagedChannel;
20 import io.grpc.internal.AbstractServerImplBuilder;
21 import io.grpc.netty.InternalHandlerSettings;
22 import io.grpc.netty.NegotiationType;
23 import io.grpc.netty.NettyChannelBuilder;
24 import io.grpc.netty.NettyServerBuilder;
25 import org.junit.BeforeClass;
26 import org.junit.runner.RunWith;
27 import org.junit.runners.JUnit4;
28 
29 @RunWith(JUnit4.class)
30 public class AutoWindowSizingOnTest extends AbstractInteropTest {
31 
32   @BeforeClass
turnOnAutoWindow()33   public static void turnOnAutoWindow() {
34     InternalHandlerSettings.enable(true);
35     InternalHandlerSettings.autoWindowOn(true);
36   }
37 
38   @Override
getServerBuilder()39   protected AbstractServerImplBuilder<?> getServerBuilder() {
40     return NettyServerBuilder.forPort(0)
41         .maxInboundMessageSize(AbstractInteropTest.MAX_MESSAGE_SIZE);
42   }
43 
44   @Override
createChannel()45   protected ManagedChannel createChannel() {
46     NettyChannelBuilder builder = NettyChannelBuilder.forAddress("localhost", getPort())
47         .negotiationType(NegotiationType.PLAINTEXT)
48         .maxInboundMessageSize(AbstractInteropTest.MAX_MESSAGE_SIZE);
49     io.grpc.internal.TestingAccessor.setStatsImplementation(
50         builder, createClientCensusStatsModule());
51     return builder.build();
52   }
53 }
54