@Test
public void test_execute_callableWithState() throws Exception {

    Callable<Long> callable = Mockito.mock(Callable.class);
    RetryState retryState = Mockito.mock(RetryState.class);
    ExtendedRetryTemplate template = new ExtendedRetryTemplate();
    Mockito.when(callable.call()).thenReturn(10L);
    Assert.assertEquals(10L, template.execute(callable, retryState).longValue());
    Mockito.verify(callable, Mockito.times(1)).call();
}