@Test
public void testVoidResponseTypeFireAndForgetCollapsing2() throws Exception {

    TestCollapserTimer timer = new TestCollapserTimer();
    TestCollapserWithVoidResponseTypeAndMissingMapResponseToRequests collapser1 = new TestCollapserWithVoidResponseTypeAndMissingMapResponseToRequests(timer, 1);
    Future<Void> response1 = collapser1.queue();
    new TestCollapserWithVoidResponseTypeAndMissingMapResponseToRequests(timer, 2).queue();
    timer.incrementTime(100); // let time pass that equals the default delay/period
    // we will fetch one of these just so we wait for completion ... but expect an error
    try {
        assertEquals(null, response1.get(1000, TimeUnit.MILLISECONDS));
        fail("expected an error as mapResponseToRequests did not set responses");
    } catch (ExecutionException e) {
        assertTrue(e.getCause() instanceof IllegalStateException);
        assertTrue(e.getCause().getMessage().startsWith("No response set by"));
    }
    assertEquals(1, HystrixRequestLog.getCurrentRequest().getAllExecutedCommands().size());
    Iterator<HystrixInvokableInfo<?>> cmdIterator = HystrixRequestLog.getCurrentRequest().getAllExecutedCommands().iterator();
    assertEquals(2, cmdIterator.next().getNumberCollapsed());
}