@Test
public void testReadExactAddedBufferSizeReturnsOriginal() {

    writeQueue.add(cat, catPromise);
    writeQueue.add(mouse, mouseListener);
    ChannelPromise aggregatePromise = newPromise();
    assertSame(cat, writeQueue.remove(3, aggregatePromise));
    assertFalse(catPromise.isSuccess());
    aggregatePromise.setSuccess();
    assertTrue(catPromise.isSuccess());
    assertEquals(1, cat.refCnt());
    cat.release();
    aggregatePromise = newPromise();
    assertSame(mouse, writeQueue.remove(5, aggregatePromise));
    assertFalse(mouseDone);
    aggregatePromise.setSuccess();
    assertTrue(mouseSuccess);
    assertEquals(1, mouse.refCnt());
    mouse.release();
}