Exemplo n.º 1
0
  @Test
  public void readShouldReadInputStreamCorrectlyAndShouldCloseStream() throws Exception {
    // Read content shorter than buffer size ...
    String content = "This is the way to grandma's house.";
    InputStream stream = new ByteArrayInputStream(content.getBytes());
    InputStreamWrapper wrapper = new InputStreamWrapper(stream);
    assertThat(wrapper.isClosed(), is(false));
    assertThat(IoUtil.read(wrapper), is(content));
    assertThat(wrapper.isClosed(), is(true));

    // Read content longer than buffer size ...
    for (int i = 0; i != 10; ++i) {
      content += content; // note this doubles each time!
    }
    stream = new ByteArrayInputStream(content.getBytes());
    wrapper = new InputStreamWrapper(stream);
    assertThat(wrapper.isClosed(), is(false));
    assertThat(IoUtil.read(wrapper), is(content));
    assertThat(wrapper.isClosed(), is(true));
  }