@Test
public void testInvoke06() throws Throwable {

    // テスト準備
    MethodInvocation mockMethodInvocation = mock(MethodInvocation.class);
    ReflectionTestUtils.setField(adminConnectionRetryInterceptor,
            "retryInterval", 500);
    ReflectionTestUtils.setField(adminConnectionRetryInterceptor,
            "maxRetryCount", 3);
    when(mockMethodInvocation.proceed()).thenThrow(
            new TransactionSystemException("test exception")).thenThrow(
                    new TransactionSystemException("test exception"))
            .thenReturn(null);
    // テスト実行
    // 検証
    assertNull(adminConnectionRetryInterceptor.invoke(
            mockMethodInvocation));
    verify(mockMethodInvocation, times(3)).proceed();
    assertEquals(Level.INFO, logger.getLoggingEvents().get(0).getLevel());
    assertEquals(
            "[IAL025017] RetryDetails. currentRetryCount:1, retryMaxCount:3, retryReset:600,000 ms, retryInterval:500 ms",
            logger.getLoggingEvents().get(0).getMessage());
    assertEquals(Level.INFO, logger.getLoggingEvents().get(1).getLevel());
    assertEquals(
            "[IAL025017] RetryDetails. currentRetryCount:2, retryMaxCount:3, retryReset:600,000 ms, retryInterval:500 ms",
            logger.getLoggingEvents().get(1).getMessage());
}