Skip to content

Commit 540909d

Browse files
committed
Test clean csv string
1 parent 90110cb commit 540909d

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

src/main/java/org/radarcns/hdfs/data/CsvAvroConverter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ private void checkHeader(String prefix, int size) {
274274

275275
static String cleanCsvString(String orig) {
276276
if (ESCAPE_PATTERN.matcher(orig).find()) {
277-
String cleaned = LINE_ENDING_PATTERN.matcher(orig).replaceAll("\\n");
277+
String cleaned = LINE_ENDING_PATTERN.matcher(orig).replaceAll("\\\\n");
278278
cleaned = TAB_PATTERN.matcher(cleaned).replaceAll(" ");
279279
cleaned = NON_PRINTING_PATTERN.matcher(cleaned).replaceAll("?");
280280
if (QUOTE_OR_COMMA_PATTERN.matcher(cleaned).find()) {

src/test/java/org/radarcns/hdfs/data/CsvAvroConverterTest.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@
6060
import static org.junit.Assert.assertFalse;
6161
import static org.junit.Assert.assertNull;
6262
import static org.junit.Assert.assertTrue;
63+
import static org.radarcns.hdfs.data.CsvAvroConverter.cleanCsvString;
6364

6465
public class CsvAvroConverterTest {
6566
@Rule
@@ -231,4 +232,15 @@ public void parseCsvLine() throws IOException {
231232
assertEquals(Arrays.asList("a", "b", "ba\"ca", "\"da\""), headers);
232233
}
233234
}
235+
236+
@Test
237+
public void cleanString() {
238+
assertEquals("test", cleanCsvString("test"));
239+
assertEquals("", cleanCsvString(""));
240+
assertEquals("\"\"\"\"", cleanCsvString("\""));
241+
assertEquals(" test", cleanCsvString("\ttest"));
242+
assertEquals("test\\n", cleanCsvString("test\r\n"));
243+
assertEquals("test?", cleanCsvString("test\b"));
244+
assertEquals("\"test,\"", cleanCsvString("test,"));
245+
}
234246
}

0 commit comments

Comments
 (0)