@Test
public void timeoutTriggered_multipleCallbacksAdded_allRegisteredCallbacksAreTriggered() {

    // given
    TimeoutExpired callback1 = mock(TimeoutExpired.class);
    TimeoutExpired callback2 = mock(TimeoutExpired.class);
    sut.addExpiredCallback(callback1);
    sut.addExpiredCallback(callback2);
    // when
    requestAndTriggerTimeout();
    // then
    verify(callback1).expired(isA(Timeout.class));
    verify(callback2).expired(isA(Timeout.class));
}