### Question:
CsvReader { public String[] readNext() { String[] result = null; do { String nextLine = getNextLine(); if (!hasNext) { return result; } String[] r = parser.parseLineMulti(nextLine); if (r.length > 0) { if (result == null) { result = r; } else { String[] t = new String[result.length + r.length]; System.arraycopy(result, 0, t, 0, result.length); System.arraycopy(r, 0, t, result.length, r.length); result = t; } } } while (parser.isPending()); return result; } CsvReader(Reader reader);  CsvReader(Reader reader, CsvFormat format); String[] readNext();  }### Answer:
@Test public void testRead() { String[] nextLine = reader.readNext(); assertEquals("a", nextLine[0]); assertEquals("b", nextLine[1]); assertEquals("c", nextLine[2]); nextLine = reader.readNext(); assertEquals("a", nextLine[0]); assertEquals("b,b,b", nextLine[1]); assertEquals("c", nextLine[2]); nextLine = reader.readNext(); assertEquals(3, nextLine.length); nextLine = reader.readNext(); assertEquals(3, nextLine.length); nextLine = reader.readNext(); assertEquals("Glen \"The Man\" Smith", nextLine[0]); nextLine = reader.readNext(); assertEquals("\"\"", nextLine[0]); assertEquals("test", nextLine[1]); nextLine = reader.readNext(); assertEquals(4, nextLine.length); assertNull(reader.readNext()); }