Skip to content

Commit 575c88d

Browse files
committed
Add some more tests that document escaping behavior
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/csv/trunk@1509957 13f79535-47bb-0310-9956-ffa450edef68
1 parent 3178725 commit 575c88d

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

src/test/java/org/apache/commons/csv/CSVLexerTest.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,30 +304,62 @@ public void testEscapedCR() throws Exception {
304304
assertThat(lexer.nextToken(new Token()), hasContent("character" + CR + "Escaped"));
305305
}
306306

307+
@Test
308+
public void testCR() throws Exception {
309+
final Lexer lexer = getLexer("character" + CR + "Escaped", formatWithEscaping);
310+
assertThat(lexer.nextToken(new Token()), hasContent("character"));
311+
assertThat(lexer.nextToken(new Token()), hasContent("Escaped"));
312+
}
313+
307314
@Test
308315
public void testEscapedLF() throws Exception {
309316
final Lexer lexer = getLexer("character\\" + LF + "Escaped", formatWithEscaping);
310317
assertThat(lexer.nextToken(new Token()), hasContent("character" + LF + "Escaped"));
311318
}
312319

320+
@Test
321+
public void testLF() throws Exception {
322+
final Lexer lexer = getLexer("character" + LF + "Escaped", formatWithEscaping);
323+
assertThat(lexer.nextToken(new Token()), hasContent("character"));
324+
assertThat(lexer.nextToken(new Token()), hasContent("Escaped"));
325+
}
326+
313327
@Test // TODO is this correct? Do we expect TAB to be un/escaped?
314328
public void testEscapedTab() throws Exception {
315329
final Lexer lexer = getLexer("character\\" + TAB + "Escaped", formatWithEscaping);
316330
assertThat(lexer.nextToken(new Token()), hasContent("character" + TAB + "Escaped"));
317331
}
318332

333+
@Test // TODO is this correct? Do we expect TAB to be un/escaped?
334+
public void testTab() throws Exception {
335+
final Lexer lexer = getLexer("character" + TAB + "Escaped", formatWithEscaping);
336+
assertThat(lexer.nextToken(new Token()), hasContent("character" + TAB + "Escaped"));
337+
}
338+
319339
@Test // TODO is this correct? Do we expect BACKSPACE to be un/escaped?
320340
public void testEscapedBackspace() throws Exception {
321341
final Lexer lexer = getLexer("character\\" + BACKSPACE + "Escaped", formatWithEscaping);
322342
assertThat(lexer.nextToken(new Token()), hasContent("character" + BACKSPACE + "Escaped"));
323343
}
324344

345+
@Test // TODO is this correct? Do we expect BACKSPACE to be un/escaped?
346+
public void testBackspace() throws Exception {
347+
final Lexer lexer = getLexer("character" + BACKSPACE + "Escaped", formatWithEscaping);
348+
assertThat(lexer.nextToken(new Token()), hasContent("character" + BACKSPACE + "Escaped"));
349+
}
350+
325351
@Test // TODO is this correct? Do we expect FF to be un/escaped?
326352
public void testEscapedFF() throws Exception {
327353
final Lexer lexer = getLexer("character\\" + FF + "Escaped", formatWithEscaping);
328354
assertThat(lexer.nextToken(new Token()), hasContent("character" + FF + "Escaped"));
329355
}
330356

357+
@Test // TODO is this correct? Do we expect FF to be un/escaped?
358+
public void testFF() throws Exception {
359+
final Lexer lexer = getLexer("character" + FF + "Escaped", formatWithEscaping);
360+
assertThat(lexer.nextToken(new Token()), hasContent("character" + FF + "Escaped"));
361+
}
362+
331363
@Test
332364
public void testEscapedMySqlNullValue() throws Exception {
333365
// MySQL uses \N to symbolize null values. We have to restore this

0 commit comments

Comments
 (0)