private void assertStreamEquals(byte bytes[], InputStream in) throws IOException { for (byte b : bytes) assert b == (byte) (in.read() & 0xFF); assertEOF(in); } }
bomIn = getBOMInputStream(bom.getSignature()); assert bom.equals(bomIn.getBOM()); assertEOF(bomIn); bomIn = getBOMInputStream(b); assert UTF8_BOM.equals(bomIn.getBOM()); assertStreamEquals(new byte[]{(byte)0x27}, bomIn); assertEOF(bomIn); bomIn = getBOMInputStream(b); assert bomIn.getBOM() == null; assertStreamEquals(b, bomIn); bomIn = getBOMInputStream(b); assert bomIn.getBOM() == null; assertEOF(bomIn); bomIn = getBOMInputStream(b); assert !UTF8_BOM.equals(bomIn.getBOM()); assertEOF(bomIn);
/** * Tests {@link BOMWriter}. * * @throws IOException should not happen */ @Test public void testBOMWriter() throws IOException { String testString = "This is a test"; ByteArrayOutputStream baos; BOMWriter bomWriter; BOMInputStream bomIn; for (BOM bom : SUPPORTED_BOMS) { baos = new ByteArrayOutputStream(); bomWriter = new BOMWriter(baos, bom.getEncoding()); bomWriter.write(testString); bomWriter.close(); bomIn = getBOMInputStream(baos.toByteArray()); assert bom.equals(bomIn.getBOM()); assertStreamEquals(testString.getBytes(bom.getEncoding()), bomIn); assertEOF(bomIn); } }