/** * Tests the functionality of getWriter (the ability to return an OutputStream that can be used to write to the main buffer). */ @Test public void testGetWriter() throws IOException { final byte[] buffer = new byte[Byte.MAX_VALUE]; ByteArraySegment segment = new ByteArraySegment(buffer); try (OutputStream writer = segment.getWriter()) { for (int i = 0; i < buffer.length; i++) { writer.write(i); } } for (int i = 0; i < buffer.length; i++) { Assert.assertEquals("Unexpected value in segment at index " + i, i, segment.get(i)); Assert.assertEquals("Unexpected value in source buffer at index " + i, i, buffer[i]); } }