@Test
void shouldWaitForFutureInBlockingGetEvenWhenInterrupted()
{

    ExecutorService executor = Executors.newSingleThreadExecutor( daemon( "InterruptThread" ) );
    try
    {
        CompletableFuture<String> future = new CompletableFuture<>();
        Thread.currentThread().interrupt();
        executor.submit( () ->
        {
            sleep( 1_000 );
            future.complete( "Hello" );
        } );
        assertEquals( "Hello", Futures.blockingGet( future ) );
        assertTrue( Thread.currentThread().isInterrupted() );
    }
    finally
    {
        Thread.interrupted(); // clear interruption status
        executor.shutdown();
    }
}