diff --git a/plugins/discovery-gce/src/test/java/org/elasticsearch/discovery/gce/RetryHttpInitializerWrapperTests.java b/plugins/discovery-gce/src/test/java/org/elasticsearch/discovery/gce/RetryHttpInitializerWrapperTests.java index 300a89cf673..eb3bbad4690 100644 --- a/plugins/discovery-gce/src/test/java/org/elasticsearch/discovery/gce/RetryHttpInitializerWrapperTests.java +++ b/plugins/discovery-gce/src/test/java/org/elasticsearch/discovery/gce/RetryHttpInitializerWrapperTests.java @@ -33,6 +33,7 @@ import org.junit.Test; import java.io.IOException; import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.lessThan; import static org.junit.Assert.assertThat; import static org.junit.Assert.fail; @@ -113,10 +114,11 @@ public class RetryHttpInitializerWrapperTests { @Test public void testRetryWaitTooLong() throws Exception { - int maxWait = 10; + int maxWaitTime = 10; + int maxRetryTimes = 50; FailThenSuccessBackoffTransport fakeTransport = - new FailThenSuccessBackoffTransport(HttpStatusCodes.STATUS_CODE_SERVER_ERROR, 50); + new FailThenSuccessBackoffTransport(HttpStatusCodes.STATUS_CODE_SERVER_ERROR, maxRetryTimes); JsonFactory jsonFactory = new JacksonFactory(); MockGoogleCredential credential = new MockGoogleCredential.Builder() .build(); @@ -124,12 +126,12 @@ public class RetryHttpInitializerWrapperTests { MockSleeper oneTimeSleeper = new MockSleeper() { @Override public void sleep(long millis) throws InterruptedException { - Thread.sleep(maxWait * 10); + Thread.sleep(maxWaitTime); super.sleep(0); // important number, use this to get count } }; - RetryHttpInitializerWrapper retryHttpInitializerWrapper = new RetryHttpInitializerWrapper(credential, oneTimeSleeper, maxWait); + RetryHttpInitializerWrapper retryHttpInitializerWrapper = new RetryHttpInitializerWrapper(credential, oneTimeSleeper, maxWaitTime); Compute client = new Compute.Builder(fakeTransport, jsonFactory, null) .setHttpRequestInitializer(retryHttpInitializerWrapper) @@ -142,9 +144,8 @@ public class RetryHttpInitializerWrapperTests { fail("Request should fail if wait too long"); } catch (HttpResponseException e) { assertThat(e.getStatusCode(), equalTo(HttpStatusCodes.STATUS_CODE_SERVER_ERROR)); - assertThat(e.getMessage(), equalTo("500\nRequest should fail")); // should only retry once. - assertThat(oneTimeSleeper.getCount(), equalTo(1)); + assertThat(oneTimeSleeper.getCount(), lessThan(maxRetryTimes)); } }