From b4c1acebb2daecbe110c1a1f67a1b90e35019148 Mon Sep 17 00:00:00 2001 From: eugenp Date: Tue, 3 Jun 2014 16:31:37 +0200 Subject: [PATCH] httpclient - timeout simulation for a domain --- .../httpclient/HttpClientTimeoutLiveTest.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/httpclient/src/test/java/org/baeldung/httpclient/HttpClientTimeoutLiveTest.java b/httpclient/src/test/java/org/baeldung/httpclient/HttpClientTimeoutLiveTest.java index 16c1be1550..85d7f3456e 100644 --- a/httpclient/src/test/java/org/baeldung/httpclient/HttpClientTimeoutLiveTest.java +++ b/httpclient/src/test/java/org/baeldung/httpclient/HttpClientTimeoutLiveTest.java @@ -92,4 +92,20 @@ public class HttpClientTimeoutLiveTest { assertThat(response.getStatusLine().getStatusCode(), equalTo(200)); } + /** + * This simulates a timeout against a domain with multiple routes/IPs to it (not a single raw IP) + */ + @Test + public final void givenTimeoutIsConfigured_whenTimingOut_thenCorrect() throws ClientProtocolException, IOException { + final int timeout = 3; + + final RequestConfig config = RequestConfig.custom().setConnectTimeout(timeout * 1000).setConnectionRequestTimeout(timeout * 1000).setSocketTimeout(timeout * 1000).build(); + final CloseableHttpClient client = HttpClientBuilder.create().setDefaultRequestConfig(config).build(); + + final HttpGet request = new HttpGet("http://www.google.com:81"); + response = client.execute(request); + + assertThat(response.getStatusLine().getStatusCode(), equalTo(200)); + } + }