@Test @Ignore public void testJira135All() throws IOException { final CSVFormat format = CSVFormat.DEFAULT.withRecordSeparator('\n').withQuote(DQUOTE_CHAR).withEscape(BACKSLASH_CH); final StringWriter sw = new StringWriter(); final List<String> list = new LinkedList<>(); try (final CSVPrinter printer = new CSVPrinter(sw, format)) { list.add("\""); list.add("\n"); list.add("\\"); printer.printRecord(list); } final String expected = "\"\\\"\",\"\\n\",\"\\\"" + format.getRecordSeparator(); assertEquals(expected, sw.toString()); final String[] record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(list.toArray(), format), record0); }
@Test @Ignore public void testJira135_part1() throws IOException { final CSVFormat format = CSVFormat.DEFAULT.withRecordSeparator('\n').withQuote(DQUOTE_CHAR).withEscape(BACKSLASH_CH); final StringWriter sw = new StringWriter(); final List<String> list = new LinkedList<>(); try (final CSVPrinter printer = new CSVPrinter(sw, format)) { list.add("\""); printer.printRecord(list); } final String expected = "\"\\\"\"" + format.getRecordSeparator(); assertEquals(expected, sw.toString()); final String[] record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(list.toArray(), format), record0); }
@Test @Ignore public void testJira135_part2() throws IOException { final CSVFormat format = CSVFormat.DEFAULT.withRecordSeparator('\n').withQuote(DQUOTE_CHAR).withEscape(BACKSLASH_CH); final StringWriter sw = new StringWriter(); final List<String> list = new LinkedList<>(); try (final CSVPrinter printer = new CSVPrinter(sw, format)) { list.add("\n"); printer.printRecord(list); } final String expected = "\"\\n\"" + format.getRecordSeparator(); assertEquals(expected, sw.toString()); final String[] record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(list.toArray(), format), record0); }
@Test @Ignore public void testJira135_part3() throws IOException { final CSVFormat format = CSVFormat.DEFAULT.withRecordSeparator('\n').withQuote(DQUOTE_CHAR).withEscape(BACKSLASH_CH); final StringWriter sw = new StringWriter(); final List<String> list = new LinkedList<>(); try (final CSVPrinter printer = new CSVPrinter(sw, format)) { list.add("\\"); printer.printRecord(list); } final String expected = "\"\\\\\"" + format.getRecordSeparator(); assertEquals(expected, sw.toString()); final String[] record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(list.toArray(), format), record0); }
private void doOneRandom(final CSVFormat format) throws Exception { final Random r = new Random(); final int nLines = r.nextInt(4) + 1; final int nCol = r.nextInt(3) + 1; // nLines=1;nCol=2; final String[][] lines = generateLines(nLines, nCol); final StringWriter sw = new StringWriter(); try (final CSVPrinter printer = new CSVPrinter(sw, format)) { for (int i = 0; i < nLines; i++) { // for (int j=0; j<lines[i].length; j++) System.out.println("### VALUE=:" + printable(lines[i][j])); printer.printRecord((Object[]) lines[i]); } printer.flush(); } final String result = sw.toString(); // System.out.println("### :" + printable(result)); try (final CSVParser parser = CSVParser.parse(result, format)) { final List<CSVRecord> parseResult = parser.getRecords(); final String[][] expected = lines.clone(); for (int i = 0; i < expected.length; i++) { expected[i] = expectNulls(expected[i], format); } Utils.compare("Printer output :" + printable(result), expected, parseResult); } }
assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString());
assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString());
assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString()); record0 = toFirstRecordValues(expected, format); assertArrayEquals(expectNulls(s, format), record0); assertEquals(expected, writer.toString());