if (retryCount < maxRetries) { assertTrue(retry); assertEquals(retryCount + 1, sleeper.count); } else { assertFalse(retry); assertEquals(maxRetries, sleeper.count); assertEquals( "baseSleepTime[secs]:2.0, maxSleepTime[secs]:3.0, maxRetries:100, maxElapsedTime[secs]:4.0", policy.toString()); sleeper = new CountingSleeper(); assertTrue(policy.allowRetry(0, elapsedTimeNanos, sleeper)); assertEquals(1, sleeper.count); assertEquals(0, sleeper.time); sleeper = new CountingSleeper(); assertTrue(policy.allowRetry(0, elapsedTimeNanos, sleeper)); assertEquals(1, sleeper.count); assertEquals(Long.MAX_VALUE, sleeper.time);