@Test public void write() throws IOException { underTest.write(0); verify(delegate).write(0); verify(consumer).accept(1); }
@Override public void write(byte[] b, int off, int len) throws IOException { delegate.write(b, off, len); consumer.accept(len); }
ConsumerCountOutputStream extends OutputStream { @Override public void write(byte[] b, int off, int len) throws IOException { delegate.write(b, off, len); consumer.accept(len); } }
ConsumerCountOutputStream extends OutputStream { @Override public void write(byte[] b, int off, int len) throws IOException { delegate.write(b, off, len); consumer.accept(len); }  }
ConsumerCountOutputStream extends OutputStream { @Override public void write(byte[] b, int off, int len) throws IOException { delegate.write(b, off, len); consumer.accept(len); }  @Override void write(byte[] b, int off, int len); @Override void write(int b); @Override void close(); }
ConsumerCountOutputStream extends OutputStream { @Override public void write(byte[] b, int off, int len) throws IOException { delegate.write(b, off, len); consumer.accept(len); }  @Override void write(byte[] b, int off, int len); @Override void write(int b); @Override void close();  }