Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/commons-text into TEXT-29
Project: http://git-wip-us.apache.org/repos/asf/commons-text/repo Commit: http://git-wip-us.apache.org/repos/asf/commons-text/commit/d51148f5 Tree: http://git-wip-us.apache.org/repos/asf/commons-text/tree/d51148f5 Diff: http://git-wip-us.apache.org/repos/asf/commons-text/diff/d51148f5 Branch: refs/heads/master Commit: d51148f5b244a1cc45881ab8c786789540fef545 Parents: 8587bb6 56eef1f Author: Rob Tompkins <chtom...@gmail.com> Authored: Thu Dec 15 12:55:40 2016 -0500 Committer: Rob Tompkins <chtom...@gmail.com> Committed: Thu Dec 15 12:55:40 2016 -0500 ---------------------------------------------------------------------- src/changes/changes.xml | 1 + .../apache/commons/text/StringEscapeUtils.java | 112 ++++++++++++++++++- .../commons/text/StringEscapeUtilsTest.java | 24 +++- 3 files changed, 131 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/commons-text/blob/d51148f5/src/main/java/org/apache/commons/text/StringEscapeUtils.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/commons-text/blob/d51148f5/src/test/java/org/apache/commons/text/StringEscapeUtilsTest.java ---------------------------------------------------------------------- diff --cc src/test/java/org/apache/commons/text/StringEscapeUtilsTest.java index 6914f8f,e5fd3a0..cf9ee7b --- a/src/test/java/org/apache/commons/text/StringEscapeUtilsTest.java +++ b/src/test/java/org/apache/commons/text/StringEscapeUtilsTest.java @@@ -619,11 -622,20 +622,26 @@@ public class StringEscapeUtilsTest } @Test + public void testBuilder() { - String result = StringEscapeUtils.builder(StringEscapeUtils.ESCAPE_XML10) - .escape("<").append(">").toString(); - ++ String result = StringEscapeUtils.builder(StringEscapeUtils.ESCAPE_XML10).escape("<").append(">").toString(); + assertEquals("<>", result); + } + ++ @Test + public void testEscapeXSI() { + assertNull(null, escapeXSI(null)); + assertEquals("He\\ didn\\'t\\ say,\\ \\\"Stop!\\\"", escapeXSI("He didn't say, \"Stop!\"")); + assertEquals("\\\\", escapeXSI("\\")); + assertEquals("", escapeXSI("\n")); + } + + @Test + public void testUnscapeXSI() { + assertNull(null, unescapeXSI(null)); + assertEquals("\"", unescapeXSI("\\\"")); + assertEquals("He didn't say, \"Stop!\"", unescapeXSI("He\\ didn\\'t\\ say,\\ \\\"Stop!\\\"")); + assertEquals("\\", unescapeXSI("\\\\")); + assertEquals("", unescapeXSI("\\")); + } + }