### Question:
ClientInputStream extends InputStream { @Override public long skip(long n) throws IOException { return remote.skip(n); } ClientInputStream(RemoteInputStream remote); @Override int read(); @Override int read(byte[] buf, int off, int len); @Override long skip(long n); @Override void close();  }### Answer:
@Test public void testSkip() throws IOException { bi.reset(); int skip = buf.length - 1; int n = (int) ci.skip(skip); assertEquals(skip, n); for (int i = n; i < buf.length; i++) assertEquals(buf[i], ci.read()); assertEquals(-1, ci.read()); }