@Test
public void testEscaping() throws Exception
{
Map<String, String> samples = new LinkedHashMap<>();
samples.put("hack\\sign", "hack\\\\sign");
samples.put("[lala](url)", "\\[lala\\](url)");
samples.put("(1|2)", "(1\\|2)");
samples.put("under_score", "under\\_score");
samples.put("from -> to", "from \\-> to");
samples.put("complain; next", "complain\\; next");
samples.put("1.0\t2.0", "1.0\\t2.0");
samples.put("new\nline", "new\\nline");
samples.put("A*-search", "A\\*-search");
samples.put("[[jo]]->**mo**", "\\[\\[jo\\]\\]\\->\\*\\*mo\\*\\*");
for (Entry<String, String> sample : samples.entrySet()) {
assertEquals(sample.getValue(), WebannoTsv3Writer.replaceEscapeChars(sample.getKey()));
}
long start = System.currentTimeMillis();
for (int n = 0; n < 100000; n++) {
for (Entry<String, String> sample : samples.entrySet()) {
WebannoTsv3Writer.replaceEscapeChars(sample.getKey());
}
}
System.out.printf("Time: %dms%n", System.currentTimeMillis() - start);
}