|
16 | 16 |
|
17 | 17 | package io.grpc.cronet;
|
18 | 18 |
|
| 19 | +import static io.grpc.internal.GrpcUtil.TIMER_SERVICE; |
19 | 20 | import static org.junit.Assert.assertFalse;
|
20 | 21 | import static org.junit.Assert.assertTrue;
|
21 | 22 |
|
22 | 23 | import io.grpc.CallOptions;
|
23 | 24 | import io.grpc.Metadata;
|
24 | 25 | import io.grpc.MethodDescriptor;
|
25 | 26 | import io.grpc.cronet.CronetChannelBuilder.CronetTransportFactory;
|
| 27 | +import io.grpc.internal.ConnectionClientTransport; |
| 28 | +import io.grpc.internal.FakeClock; |
| 29 | +import io.grpc.internal.SharedResourceHolder; |
26 | 30 | import io.grpc.testing.TestMethodDescriptors;
|
27 | 31 | import java.net.InetSocketAddress;
|
28 | 32 | import org.chromium.net.ExperimentalCronetEngine;
|
@@ -73,4 +77,33 @@ public void alwaysUsePut_defaultsToFalse() throws Exception {
|
73 | 77 |
|
74 | 78 | assertFalse(stream.idempotent);
|
75 | 79 | }
|
| 80 | + |
| 81 | + @Test |
| 82 | + public void scheduledExecutorService_default() { |
| 83 | + CronetChannelBuilder builder = CronetChannelBuilder.forAddress("address", 1234, mockEngine); |
| 84 | + ClientTransportFactory clientTransportFactory = builder.buildTransportFactory(); |
| 85 | + assertSame( |
| 86 | + SharedResourceHolder.get(TIMER_SERVICE), |
| 87 | + clientTransportFactory.getScheduledExecutorService()); |
| 88 | + |
| 89 | + SharedResourceHolder.release( |
| 90 | + TIMER_SERVICE, clientTransportFactory.getScheduledExecutorService()); |
| 91 | + clientTransportFactory.close(); |
| 92 | + } |
| 93 | + |
| 94 | + @Test |
| 95 | + public void scheduledExecutorService_custom() { |
| 96 | + CronetChannelBuilder builder = CronetChannelBuilder.forAddress("address", 1234, mockEngine); |
| 97 | + ScheduledExecutorService scheduledExecutorService = |
| 98 | + new FakeClock().getScheduledExecutorService(); |
| 99 | + |
| 100 | + CronetChannelBuilder builder1 = builder.scheduledExecutorService(scheduledExecutorService); |
| 101 | + assertSame(builder, builder1); |
| 102 | + |
| 103 | + ClientTransportFactory clientTransportFactory = builder1.buildTransportFactory(); |
| 104 | + |
| 105 | + assertSame(scheduledExecutorService, clientTransportFactory.getScheduledExecutorService()); |
| 106 | + |
| 107 | + clientTransportFactory.close(); |
| 108 | + } |
76 | 109 | }
|
0 commit comments