@Override
    public boolean isDone() {
        return original.isDone() && peel().isDone();
    }
@Test
    public void isDone() throws Exception {
        ScheduledFuture<Object> outer = createScheduledFutureMock();
        ScheduledFuture<Object> inner = createScheduledFutureMock();
        when(outer.get()).thenReturn(inner);

        when(outer.isDone()).thenReturn(true);
        when(inner.isDone()).thenReturn(false);
        assertFalse(new DelegatingScheduledFutureStripper<Object>(outer).isDone());

        when(outer.isDone()).thenReturn(true);
        when(inner.isDone()).thenReturn(true);
        assertTrue(new DelegatingScheduledFutureStripper<Object>(outer).isDone());
    }