You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by pa...@apache.org on 2017/08/01 16:05:15 UTC

[text] Added Unit Tests which cover previously untested code (closes #60).

Repository: commons-text
Updated Branches:
  refs/heads/master 998764ebe -> 996b4beb4


Added Unit Tests which cover previously untested code (closes #60).


Project: http://git-wip-us.apache.org/repos/asf/commons-text/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-text/commit/996b4beb
Tree: http://git-wip-us.apache.org/repos/asf/commons-text/tree/996b4beb
Diff: http://git-wip-us.apache.org/repos/asf/commons-text/diff/996b4beb

Branch: refs/heads/master
Commit: 996b4beb4da188bf831079d31b24a5a36f149e73
Parents: 998764e
Author: Michael Hausegger <ha...@googlemail.com>
Authored: Mon Jul 31 23:58:18 2017 +0200
Committer: Pascal Schumacher <pa...@gmx.net>
Committed: Tue Aug 1 18:05:10 2017 +0200

----------------------------------------------------------------------
 .../commons/text/AlphabetConverterTest.java     | 12 ++++++
 .../commons/text/FormattableUtilsTest.java      |  8 +++-
 .../commons/text/StringEscapeUtilsTest.java     | 36 ++++++++++++++++++
 .../org/apache/commons/text/WordUtilsTest.java  |  6 ++-
 .../commons/text/similarity/FuzzyScoreTest.java | 12 +++++-
 .../text/translate/CodePointTranslatorTest.java | 40 ++++++++++++++++++++
 .../text/translate/LookupTranslatorTest.java    |  8 +++-
 .../translate/SinglePassTranslatorTest.java     |  6 +++
 8 files changed, 123 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-text/blob/996b4beb/src/test/java/org/apache/commons/text/AlphabetConverterTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/text/AlphabetConverterTest.java b/src/test/java/org/apache/commons/text/AlphabetConverterTest.java
index 4ffd20c..5e98d98 100644
--- a/src/test/java/org/apache/commons/text/AlphabetConverterTest.java
+++ b/src/test/java/org/apache/commons/text/AlphabetConverterTest.java
@@ -29,6 +29,7 @@ import org.junit.rules.ExpectedException;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
 
 /**
  * Unit tests for {@link AlphabetConverter}.
@@ -252,6 +253,17 @@ public class AlphabetConverterTest {
     }
 
     @Test
+    public void testEqualsWithSameObject() {
+        Character[] characterArray = new Character[2];
+        Character character = new Character('R');
+        characterArray[0] = character;
+        characterArray[1] = character;
+        AlphabetConverter alphabetConverter = AlphabetConverter.createConverterFromChars(characterArray, characterArray, characterArray);
+
+        assertTrue(alphabetConverter.equals(alphabetConverter));
+    }
+
+    @Test
     public void testEqualsWithNull() {
         Character[] characterArray = new Character[0];
         AlphabetConverter alphabetConverter = AlphabetConverter.createConverterFromChars(characterArray, null, null);

http://git-wip-us.apache.org/repos/asf/commons-text/blob/996b4beb/src/test/java/org/apache/commons/text/FormattableUtilsTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/text/FormattableUtilsTest.java b/src/test/java/org/apache/commons/text/FormattableUtilsTest.java
index c7feb38..8a3225a 100644
--- a/src/test/java/org/apache/commons/text/FormattableUtilsTest.java
+++ b/src/test/java/org/apache/commons/text/FormattableUtilsTest.java
@@ -125,6 +125,11 @@ public class FormattableUtilsTest {
         assertEquals("+*___", FormattableUtils.append("foo", new Formatter(), LEFT_JUSTIFY, 5, 2, '_', "+*").toString());
     }
 
+    @Test(expected = NullPointerException.class)
+    public void testAppendWithNullFormatterAndIntsThrowsNullPointerException() {
+        FormattableUtils.append("", null, 0, 0, 0, '}');
+    }
+
     static class SimplestFormattable implements Formattable {
         private final String text;
 
@@ -138,5 +143,4 @@ public class FormattableUtilsTest {
         }
     };
 
-
-}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/commons-text/blob/996b4beb/src/test/java/org/apache/commons/text/StringEscapeUtilsTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/text/StringEscapeUtilsTest.java b/src/test/java/org/apache/commons/text/StringEscapeUtilsTest.java
index 4de4fea..2f7d319 100644
--- a/src/test/java/org/apache/commons/text/StringEscapeUtilsTest.java
+++ b/src/test/java/org/apache/commons/text/StringEscapeUtilsTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.text;
 
+import org.junit.Ignore;
 import org.junit.Test;
 
 import java.io.IOException;
@@ -592,4 +593,39 @@ public class StringEscapeUtilsTest {
         assertEquals("", unescapeXSI("\\"));
     }
 
+    @Test
+    public void testUnescapeEcmaScript() {
+        assertNull("Should be null.", StringEscapeUtils.unescapeEcmaScript(null));
+        assertEquals("8lvc1u+6B#-I", StringEscapeUtils.unescapeEcmaScript("8lvc1u+6B#-I"));
+        assertEquals("<script src=\"build/main.bundle.js\"></script>",
+                StringEscapeUtils.unescapeEcmaScript("<script src=\"build/main.bundle.js\"></script>"));
+        assertEquals("<script src=\"build/main.bundle.js\"></script>>",
+                StringEscapeUtils.unescapeEcmaScript("<script src=\"build/main.bundle.js\"></script>>"));
+    }
+
+    @Test
+    public void testEscapeHtmlThree() {
+        assertNull("Should be null.", StringEscapeUtils.escapeHtml3(null));
+        assertEquals("a", StringEscapeUtils.escapeHtml3("a"));
+        assertEquals("&lt;b&gt;a", StringEscapeUtils.escapeHtml3("<b>a"));
+    }
+
+    @Test
+    public void testUnescapeJson() {
+        String jsonString = "{\"age\":100,\"name\":\"kyong.com\n\",\"messages\":[\"msg 1\",\"msg 2\",\"msg 3\"]}";
+
+        assertEquals("", StringEscapeUtils.unescapeJson(""));
+        assertEquals(" ", StringEscapeUtils.unescapeJson(" "));
+        assertEquals("a:b", StringEscapeUtils.unescapeJson("a:b"));
+        assertEquals(jsonString, StringEscapeUtils.unescapeJson(jsonString));
+    }
+
+    @Ignore("https://issues.apache.org/jira/browse/TEXT-100.")
+    @Test
+    public void testUnescapeJsonFoundBug_Issue_Text_100() {
+        String jsonString = "{\"age\":100,\"name\":\"m\\\"kyong.com\",\"messages\":[\"msg 1\",\"msg 2\",\"msg 3\"]}";
+
+        assertEquals(jsonString, StringEscapeUtils.unescapeJson(jsonString));
+    }
+
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/commons-text/blob/996b4beb/src/test/java/org/apache/commons/text/WordUtilsTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/text/WordUtilsTest.java b/src/test/java/org/apache/commons/text/WordUtilsTest.java
index beb063a..7a9cb59 100644
--- a/src/test/java/org/apache/commons/text/WordUtilsTest.java
+++ b/src/test/java/org/apache/commons/text/WordUtilsTest.java
@@ -512,7 +512,11 @@ public class WordUtilsTest {
         WordUtils.wrap("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "
                 + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "
                 + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",70);
+    }
 
+    @Test
+    public void testContainsAllWordsWithNull() {
+        assertFalse(WordUtils.containsAllWords("M", null));
     }
 
-}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/commons-text/blob/996b4beb/src/test/java/org/apache/commons/text/similarity/FuzzyScoreTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/text/similarity/FuzzyScoreTest.java b/src/test/java/org/apache/commons/text/similarity/FuzzyScoreTest.java
index 22621f2..17e1965 100644
--- a/src/test/java/org/apache/commons/text/similarity/FuzzyScoreTest.java
+++ b/src/test/java/org/apache/commons/text/similarity/FuzzyScoreTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.text.similarity;
 
+import static junit.framework.TestCase.assertSame;
 import static org.junit.Assert.assertEquals;
 
 import java.util.Locale;
@@ -61,4 +62,13 @@ public class FuzzyScoreTest {
         new FuzzyScore((Locale) null);
     }
 
-}
+    @Test
+    public void testGetLocale() {
+        Locale locale = Locale.CANADA_FRENCH;
+        FuzzyScore fuzzyScore = new FuzzyScore(locale);
+        Locale localeTwo = fuzzyScore.getLocale();
+
+        assertSame(locale, localeTwo);
+    }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/commons-text/blob/996b4beb/src/test/java/org/apache/commons/text/translate/CodePointTranslatorTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/text/translate/CodePointTranslatorTest.java b/src/test/java/org/apache/commons/text/translate/CodePointTranslatorTest.java
new file mode 100644
index 0000000..2ab50b3
--- /dev/null
+++ b/src/test/java/org/apache/commons/text/translate/CodePointTranslatorTest.java
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.text.translate;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.io.IOException;
+import java.io.PipedReader;
+import java.io.PipedWriter;
+
+
+public class CodePointTranslatorTest {
+
+  @Test
+  public void testAboveReturningNonNull() throws IOException {
+    NumericEntityEscaper numericEntityEscaper = NumericEntityEscaper.above(0);
+    UnicodeEscaper unicodeEscaper = new UnicodeEscaper();
+    String string = unicodeEscaper.toUtf16Escape(0);
+    PipedReader pipedReader = new PipedReader();
+    PipedWriter pipedWriter = new PipedWriter(pipedReader);
+
+    Assert.assertEquals(1, numericEntityEscaper.translate(string, 0, pipedWriter));
+  }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/commons-text/blob/996b4beb/src/test/java/org/apache/commons/text/translate/LookupTranslatorTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/text/translate/LookupTranslatorTest.java b/src/test/java/org/apache/commons/text/translate/LookupTranslatorTest.java
index ebf7af5..53fcef2 100644
--- a/src/test/java/org/apache/commons/text/translate/LookupTranslatorTest.java
+++ b/src/test/java/org/apache/commons/text/translate/LookupTranslatorTest.java
@@ -21,6 +21,7 @@ import org.junit.Test;
 
 import java.io.IOException;
 import java.io.StringWriter;
+import java.security.InvalidParameterException;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -54,4 +55,9 @@ public class LookupTranslatorTest  {
         assertEquals("Incorrect value", "two", out.toString());
     }
 
-}
+    @Test(expected = InvalidParameterException.class)
+    public void testFailsToCreateLookupTranslatorThrowsInvalidParameterException() {
+        new LookupTranslator(null);
+    }
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/commons-text/blob/996b4beb/src/test/java/org/apache/commons/text/translate/SinglePassTranslatorTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/text/translate/SinglePassTranslatorTest.java b/src/test/java/org/apache/commons/text/translate/SinglePassTranslatorTest.java
index d36d6e2..6e682d9 100644
--- a/src/test/java/org/apache/commons/text/translate/SinglePassTranslatorTest.java
+++ b/src/test/java/org/apache/commons/text/translate/SinglePassTranslatorTest.java
@@ -54,4 +54,10 @@ public class SinglePassTranslatorTest {
     public void indexIsValidated() throws Exception {
         dummyTranslator.translate("abc", 1, out);
     }
+
+    @Test(expected = IllegalArgumentException.class)
+    public void testTranslateThrowsIllegalArgumentException() throws IOException {
+        dummyTranslator.translate("(,Fk", 647, null);
+    }
+
 }
\ No newline at end of file