@Test public void testUnsigned() throws IOException { writer.writeUnsigned(1, 1); writer.writeUnsigned(2, 2); writer.writeUnsigned(3, 3); writer.writeUnsigned(4, 4); try { writer.writeUnsigned(8, 8); fail("No exception on bad argument"); } catch (IllegalArgumentException e) { assertEquals("Unsupported byte count for unsigned: 8", e.getMessage()); } BinaryReader reader = getReader(); try { reader.expectUnsigned(8); fail("No exception on bad argument"); } catch (IllegalArgumentException e) { assertEquals("Unsupported byte count for unsigned: 8", e.getMessage()); } assertEquals(1, reader.expectUnsigned(1)); assertEquals(2, reader.expectUnsigned(2)); assertEquals(3, reader.expectUnsigned(3)); assertEquals(4, reader.expectUnsigned(4)); }
private void assertBadExpectUnsigned(String message, byte[] data, int bytes) { ByteArrayInputStream bais = new ByteArrayInputStream(data); try { BinaryReader reader = new BigEndianBinaryReader(bais); reader.expectUnsigned(bytes); fail("No exception on bad short"); } catch (IOException e) { assertEquals(message, e.getMessage()); } }