Skip to content

Commit 1ad309f

Browse files
committed
Add test for tab characters (ASCII 9) in values
1 parent d992e26 commit 1ad309f

3 files changed

Lines changed: 9 additions & 8 deletions

File tree

src/test/java/org/apache/commons/csv/issues/JiraCsv290Test.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,22 +37,22 @@
3737
//
3838
// create table COMMONS_CSV_PSQL_TEST (ID INTEGER, COL1 VARCHAR, COL2 VARCHAR, COL3 VARCHAR, COL4 VARCHAR);
3939
// insert into COMMONS_CSV_PSQL_TEST select 1, 'abc', 'test line 1' || chr(10) || 'test line 2', null, '';
40-
// insert into COMMONS_CSV_PSQL_TEST select 2, 'xyz', '\b:' || chr(8) || ' \n:' || chr(10) || ' \r:' || chr(13), 'a', 'b';
40+
// insert into COMMONS_CSV_PSQL_TEST select 2, 'xyz', '\b:' || chr(8) || ' \t:' || chr(9) || ' \n:' || chr(10) || ' \r:' || chr(13), 'a', 'b';
4141
// insert into COMMONS_CSV_PSQL_TEST values (3, 'a', 'b,c,d', '"quoted"', 'e');
4242
// copy COMMONS_CSV_PSQL_TEST TO '/tmp/psql.csv' WITH (FORMAT CSV);
4343
// copy COMMONS_CSV_PSQL_TEST TO '/tmp/psql.tsv';
4444
//
4545
// cat /tmp/psql.csv
4646
// 1,abc,"test line 1
4747
// test line 2",,""
48-
// 2,xyz,"\b:^H \n:
48+
// 2,xyz,"\b:^H \t: \n:
4949
// \r:^M",a,b
5050
// 3,a,"b,c,d","""quoted""",e
5151
//
5252
// cat /tmp/psql.tsv
53-
// 1 abc test line 1\ntest line 2 \N
54-
// 2 xyz \\b:\b \\n:\n \\r:\r a b
55-
// 3 a b,c,d "quoted" e
53+
// 1 abc test line 1\ntest line 2 \N
54+
// 2 xyz \\b:\b \\t:\t \\n:\n \\r:\r a b
55+
// 3 a b,c,d "quoted" e
5656
//
5757
public class JiraCsv290Test {
5858
private void testHelper(String filename, CSVFormat format) throws Exception {
@@ -67,6 +67,7 @@ private void testHelper(String filename, CSVFormat format) throws Exception {
6767
}
6868
}
6969
}
70+
7071
assertEquals(3, content.size());
7172

7273
assertEquals("1", content.get(0).get(0));
@@ -76,7 +77,7 @@ private void testHelper(String filename, CSVFormat format) throws Exception {
7677
assertEquals("", content.get(0).get(4));
7778

7879
assertEquals("2", content.get(1).get(0));
79-
assertEquals("\\b:\b \\n:\n \\r:\r", content.get(1).get(2)); // \b, \n, \r
80+
assertEquals("\\b:\b \\t:\t \\n:\n \\r:\r", content.get(1).get(2)); // \b, \t, \n, \r
8081

8182
assertEquals("3", content.get(2).get(0));
8283
assertEquals("b,c,d", content.get(2).get(2)); // value has comma

src/test/resources/org/apache/commons/csv/CSV-290/psql.csv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
1,abc,"test line 1
22
test line 2",,""
3-
2,xyz,"\b: \n:
3+
2,xyz,"\b: \t: \n:
44
\r:",a,b
55
3,a,"b,c,d","""quoted""",e
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
1 abc test line 1\ntest line 2 \N
2-
2 xyz \\b:\b \\n:\n \\r:\r a b
2+
2 xyz \\b:\b \\t:\t \\n:\n \\r:\r a b
33
3 a b,c,d "quoted" e

0 commit comments

Comments
 (0)