@Test public void testExponentialRetry() { TableRetryPolicy retryPolicy = new TableRetryPolicy(); retryPolicy.withExponentialBackoff(Duration.ofMillis(1000), Duration.ofMillis(2000), 1.5); retryPolicy.withJitter(Duration.ofMillis(100)); Assert.assertEquals(TableRetryPolicy.BackoffType.EXPONENTIAL, retryPolicy.getBackoffType()); RetryPolicy fsRetry = FailsafeAdapter.valueOf(retryPolicy); Assert.assertEquals(1000, fsRetry.getDelay().toMillis()); Assert.assertEquals(2000, fsRetry.getMaxDelay().toMillis()); Assert.assertEquals(1.5, fsRetry.getDelayFactor(), 0.001); Assert.assertEquals(100, fsRetry.getJitter().toMillis()); }
@Test public void testFixedRetry() { TableRetryPolicy retryPolicy = new TableRetryPolicy(); retryPolicy.withFixedBackoff(Duration.ofMillis(1000)); retryPolicy.withJitter(Duration.ofMillis(100)); retryPolicy.withStopAfterAttempts(4); Assert.assertEquals(TableRetryPolicy.BackoffType.FIXED, retryPolicy.getBackoffType()); RetryPolicy fsRetry = FailsafeAdapter.valueOf(retryPolicy); Assert.assertEquals(1000, fsRetry.getDelay().toMillis()); Assert.assertEquals(100, fsRetry.getJitter().toMillis()); Assert.assertEquals(4, fsRetry.getMaxRetries()); Assert.assertNotNull(retryPolicy.getRetryPredicate()); }