@Test(expected = BallException.class)
public void shouldThrowWhenDeliverIntermediateAfterFinalWithoutStoredError() {

    when(mRequest.isIntermediateResponseDelivered()).thenReturn(false);
    when(mRequest.isFinalResponseDelivered()).thenReturn(true);
    when(mResponse.isIntermediate()).thenReturn(true);
    when(mResponse.isSuccess()).thenReturn(true);
    when(mResponse.getResponseSource()).thenReturn(BallResponse.ResponseSource.CACHE);
    mResponseDelivery.postResponse(mRequest, mResponse);
}