public byte[] readAll() throws IOException {
    if (pos == 0 && count == buf.length) {
      pos = count;
      return buf;
    }
    byte[] ret = new byte[count - pos];
    super.read(ret);
    return ret;
  }
@Test
  public void testReadAllAfterReadPartial() throws IOException {
    assertNotEquals(-1, exposedStream.read());
    byte[] ret = exposedStream.readAll();
    assertArrayEquals("ello World!".getBytes(StandardCharsets.UTF_8), ret);
  }