@Test
  public void testShort() throws IOException {
    // test writing and reading shorts.
    writer.writeShort((short) 1);
    writer.writeShort((short) 0xffff);
    writer.writeShort((short) -12345);
    writer.writeShort((short) 0);

    BinaryReader reader = getReader();

    assertEquals((short) 1, reader.expectShort());
    assertEquals((short) 0xffff, reader.expectShort());
    assertEquals((short) -12345, reader.expectShort());
    assertEquals((short) 0, reader.expectShort());
  }
 private void assertBadExpectShort(String message, byte[] data) {
   ByteArrayInputStream bais = new ByteArrayInputStream(data);
   try {
     BinaryReader reader = new BigEndianBinaryReader(bais);
     reader.expectShort();
     fail("No exception on bad short");
   } catch (IOException e) {
     assertEquals(message, e.getMessage());
   }
 }