Consistent timeout settings in integration tests
This commit is contained in:
parent
dcc09e92e0
commit
b4e0611b05
|
@ -30,6 +30,7 @@ package org.apache.hc.client5.testing.async;
|
|||
import java.net.InetSocketAddress;
|
||||
import java.util.concurrent.Future;
|
||||
|
||||
import org.apache.hc.client5.http.config.RequestConfig;
|
||||
import org.apache.hc.client5.http.impl.async.CloseableHttpAsyncClient;
|
||||
import org.apache.hc.client5.http.impl.async.HttpAsyncClientBuilder;
|
||||
import org.apache.hc.core5.function.Decorator;
|
||||
|
@ -62,7 +63,13 @@ public abstract class IntegrationTestBase extends LocalAsyncServerTestBase {
|
|||
|
||||
@Override
|
||||
protected void before() throws Throwable {
|
||||
clientBuilder = HttpAsyncClientBuilder.create().setConnectionManager(connManager);
|
||||
clientBuilder = HttpAsyncClientBuilder.create()
|
||||
.setDefaultRequestConfig(RequestConfig.custom()
|
||||
.setSocketTimeout(TIMEOUT)
|
||||
.setConnectTimeout(TIMEOUT)
|
||||
.setConnectionRequestTimeout(TIMEOUT)
|
||||
.build())
|
||||
.setConnectionManager(connManager);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -37,11 +37,15 @@ import org.apache.hc.core5.http.nio.AsyncServerExchangeHandler;
|
|||
import org.apache.hc.core5.reactor.IOReactorConfig;
|
||||
import org.apache.hc.core5.testing.nio.Http2TestServer;
|
||||
import org.apache.hc.core5.util.TimeValue;
|
||||
import org.apache.hc.core5.util.Timeout;
|
||||
import org.junit.Rule;
|
||||
import org.junit.rules.ExternalResource;
|
||||
|
||||
public abstract class LocalAsyncServerTestBase {
|
||||
|
||||
public static final Timeout TIMEOUT = Timeout.ofSeconds(30);
|
||||
public static final Timeout LONG_TIMEOUT = Timeout.ofSeconds(60);
|
||||
|
||||
protected final URIScheme scheme;
|
||||
|
||||
public LocalAsyncServerTestBase(final URIScheme scheme) {
|
||||
|
@ -61,7 +65,9 @@ public abstract class LocalAsyncServerTestBase {
|
|||
@Override
|
||||
protected void before() throws Throwable {
|
||||
server = new Http2TestServer(
|
||||
IOReactorConfig.DEFAULT,
|
||||
IOReactorConfig.custom()
|
||||
.setSoTimeout(TIMEOUT)
|
||||
.build(),
|
||||
scheme == URIScheme.HTTPS ? SSLTestContexts.createServerSSLContext() : null);
|
||||
server.register("/echo/*", new Supplier<AsyncServerExchangeHandler>() {
|
||||
|
||||
|
|
|
@ -97,7 +97,7 @@ public class TestAsyncStatefulConnManagement extends IntegrationTestBase {
|
|||
worker.start();
|
||||
}
|
||||
for (final HttpWorker worker : workers) {
|
||||
worker.join(10000);
|
||||
worker.join(LONG_TIMEOUT.toMillis());
|
||||
}
|
||||
for (final HttpWorker worker : workers) {
|
||||
final Exception ex = worker.getException();
|
||||
|
|
|
@ -64,6 +64,7 @@ import org.apache.hc.core5.reactor.IOReactorConfig;
|
|||
import org.apache.hc.core5.reactor.ListenerEndpoint;
|
||||
import org.apache.hc.core5.testing.nio.Http2TestServer;
|
||||
import org.apache.hc.core5.util.TimeValue;
|
||||
import org.apache.hc.core5.util.Timeout;
|
||||
import org.hamcrest.CoreMatchers;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Rule;
|
||||
|
@ -75,6 +76,8 @@ import org.junit.runners.Parameterized;
|
|||
@RunWith(Parameterized.class)
|
||||
public class TestHttpAsyncMinimal {
|
||||
|
||||
public static final Timeout TIMEOUT = Timeout.ofSeconds(30);
|
||||
|
||||
@Parameterized.Parameters(name = "{0} {1}")
|
||||
public static Collection<Object[]> protocols() {
|
||||
return Arrays.asList(new Object[][]{
|
||||
|
@ -102,7 +105,9 @@ public class TestHttpAsyncMinimal {
|
|||
@Override
|
||||
protected void before() throws Throwable {
|
||||
server = new Http2TestServer(
|
||||
IOReactorConfig.DEFAULT,
|
||||
IOReactorConfig.custom()
|
||||
.setSoTimeout(TIMEOUT)
|
||||
.build(),
|
||||
scheme == URIScheme.HTTPS ? SSLTestContexts.createServerSSLContext() : null);
|
||||
server.register("/echo/*", new Supplier<AsyncServerExchangeHandler>() {
|
||||
|
||||
|
@ -141,7 +146,7 @@ public class TestHttpAsyncMinimal {
|
|||
.setTlsStrategy(new H2TlsStrategy(SSLTestContexts.createClientSSLContext()))
|
||||
.build();
|
||||
final IOReactorConfig ioReactorConfig = IOReactorConfig.custom()
|
||||
.setSoTimeout(5, TimeUnit.SECONDS)
|
||||
.setSoTimeout(TIMEOUT)
|
||||
.build();
|
||||
if (version.greaterEquals(HttpVersion.HTTP_2)) {
|
||||
httpclient = HttpAsyncClients.createMinimal(
|
||||
|
|
|
@ -28,8 +28,8 @@
|
|||
package org.apache.hc.client5.testing.sync;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import org.apache.hc.client5.http.config.RequestConfig;
|
||||
import org.apache.hc.client5.http.impl.io.PoolingHttpClientConnectionManager;
|
||||
import org.apache.hc.client5.http.impl.sync.CloseableHttpClient;
|
||||
import org.apache.hc.client5.http.impl.sync.HttpClientBuilder;
|
||||
|
@ -44,6 +44,7 @@ import org.apache.hc.core5.http.io.HttpServerRequestHandler;
|
|||
import org.apache.hc.core5.http.protocol.HttpProcessor;
|
||||
import org.apache.hc.core5.io.ShutdownType;
|
||||
import org.apache.hc.core5.testing.classic.ClassicTestServer;
|
||||
import org.apache.hc.core5.util.Timeout;
|
||||
import org.junit.Rule;
|
||||
import org.junit.rules.ExternalResource;
|
||||
|
||||
|
@ -52,6 +53,9 @@ import org.junit.rules.ExternalResource;
|
|||
*/
|
||||
public abstract class LocalServerTestBase {
|
||||
|
||||
public static final Timeout TIMEOUT = Timeout.ofSeconds(30);
|
||||
public static final Timeout LONG_TIMEOUT = Timeout.ofSeconds(60);
|
||||
|
||||
public LocalServerTestBase(final URIScheme scheme) {
|
||||
this.scheme = scheme;
|
||||
}
|
||||
|
@ -72,7 +76,7 @@ public abstract class LocalServerTestBase {
|
|||
server = new ClassicTestServer(
|
||||
scheme == URIScheme.HTTPS ? SSLTestContexts.createServerSSLContext() : null,
|
||||
SocketConfig.custom()
|
||||
.setSoTimeout(5, TimeUnit.SECONDS)
|
||||
.setSoTimeout(TIMEOUT)
|
||||
.build());
|
||||
server.registerHandler("/echo/*", new EchoHandler());
|
||||
server.registerHandler("/random/*", new RandomHandler());
|
||||
|
@ -102,9 +106,14 @@ public abstract class LocalServerTestBase {
|
|||
protected void before() throws Throwable {
|
||||
connManager = new PoolingHttpClientConnectionManager();
|
||||
connManager.setDefaultSocketConfig(SocketConfig.custom()
|
||||
.setSoTimeout(5, TimeUnit.SECONDS)
|
||||
.setSoTimeout(TIMEOUT)
|
||||
.build());
|
||||
clientBuilder = HttpClientBuilder.create()
|
||||
.setDefaultRequestConfig(RequestConfig.custom()
|
||||
.setSocketTimeout(TIMEOUT)
|
||||
.setConnectTimeout(TIMEOUT)
|
||||
.setConnectionRequestTimeout(TIMEOUT)
|
||||
.build())
|
||||
.setConnectionManager(connManager);
|
||||
}
|
||||
|
||||
|
|
|
@ -107,7 +107,7 @@ public class TestStatefulConnManagement extends LocalServerTestBase {
|
|||
worker.start();
|
||||
}
|
||||
for (final HttpWorker worker : workers) {
|
||||
worker.join(10000);
|
||||
worker.join(LONG_TIMEOUT.toMillis());
|
||||
}
|
||||
for (final HttpWorker worker : workers) {
|
||||
final Exception ex = worker.getException();
|
||||
|
|
Loading…
Reference in New Issue