@Test
public void testShutdown02() throws Exception {

    ThreadPoolExecutor mockThreadPoolExecutor = mock(ThreadPoolExecutor.class);
    doReturn(false).doReturn(true).when(
            mockThreadPoolExecutor).awaitTermination(anyLong(),
            eq(TimeUnit.MILLISECONDS));
    doReturn(mockThreadPoolExecutor).when(threadPoolTaskExecutor)
            .getThreadPoolExecutor();
    doNothing().when(threadPoolTaskExecutor).shutdown();
    AsyncJobLauncherImpl asyncJobLauncher = new AsyncJobLauncherImpl(
            threadPoolTaskExecutor, asyncJobWorker);
    asyncJobLauncher.executorJobTerminateWaitIntervalTime = 1L;
    // テスト実行
    asyncJobLauncher.shutdown();
    // シャットダウン後の待ち合わせが行われていない。
    // ⇒ログにINFOログが1度だけ出力されていること。
    assertThat(logger.getLoggingEvents().size(), is(1));
    assertThat(logger.getLoggingEvents(), is(asList(info(
            "[IAL025020] Waiting to shutdown all tasks in ThreadPoolTaskExecutor."))));
}