public void testReadCharBuffer() throws IOException {
CharBuffer source = CharBuffer.wrap("String");
CharBuffer target = CharBuffer.allocate(10);
assertEquals(6, source.read(target));
assertEquals("String", target.flip().toString());
// return -1 when nothing to read
assertEquals(-1, source.read(target));
// NullPointerException
try {
assertEquals(-1, source.read(null));