@Test public void testAbortedRecordsIgnored() throws IOException { String data = "gibberish" + // Initial gibberish "\n:a\t%" + // Full record containing a "gibberish" + // More gibberish "\n:x:b\t:x%" + // Record containing b, aborted xes "\n:x\t" + // Aborted record containing nonaborted x "\n:\\u00abcd\t%" + // Full record containing \uabcd "\n"; // Aborted record start System.out.println(data); System.out.println("------------"); ByteArrayInputStream in = new ByteArrayInputStream(data.getBytes()); SimpleATRReader r = new SimpleATRReader(in); List<String> rec; rec = r.readRecord(); assertEquals(1, rec.size()); assertEquals("a", rec.get(0)); rec = r.readRecord(); assertEquals(1, rec.size()); assertEquals("b", rec.get(0)); rec = r.readRecord(); assertEquals(1, rec.size()); assertEquals("\uabcd", rec.get(0)); rec = r.readRecord(); assertNull(rec); }
@Test public void testBackslashBackslash() throws IOException { ByteArrayOutputStream out = new ByteArrayOutputStream(); ATRWriter w = new ATRWriter(out); w.startRecord(); w.write("\\"); w.endRecord(); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); SimpleATRReader r = new SimpleATRReader(in); assertEquals("\\", r.readRecord().get(0)); }