StreamWriteFilter filter = new StreamWriteFilter();
byte[] data = new byte[] { 1, 2, 3, 4 };
InputStream stream = new ByteArrayInputStream(data);
WriteRequest writeRequest = new DefaultWriteRequest(stream,
new DummyWriteFuture());
/*
* Record expectations
*/
nextFilter.filterWrite(session, new DefaultWriteRequest(IoBuffer
.wrap(data)));
mockNextFilter.setMatcher(new WriteRequestMatcher());
nextFilter.messageSent(session, writeRequest);
/*
* Replay.
*/
mockNextFilter.replay();
filter.filterWrite(nextFilter, session, writeRequest);
filter.messageSent(nextFilter, session, writeRequest);
/*
* Verify.
*/
mockNextFilter.verify();
assertTrue(writeRequest.getFuture().isWritten());
}