You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ch...@apache.org on 2016/09/11 17:20:43 UTC
[5/9] [lang] LANG-1252: adding test for deprecated isNumber
LANG-1252: adding test for deprecated isNumber
Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/a2660687
Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/a2660687
Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/a2660687
Branch: refs/heads/master
Commit: a2660687980b36003a612eb89b40d6fdecb4b153
Parents: 71d9e00
Author: Rob Tompkins <ch...@gmail.com>
Authored: Sun Sep 11 10:51:29 2016 -0400
Committer: Rob Tompkins <ch...@gmail.com>
Committed: Sun Sep 11 10:51:29 2016 -0400
----------------------------------------------------------------------
.../commons/lang3/math/NumberUtilsTest.java | 67 ++++++++++++++++++++
1 file changed, 67 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-lang/blob/a2660687/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java b/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java
index 5a5814c..ab8b11d 100644
--- a/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java
+++ b/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java
@@ -1316,6 +1316,73 @@ public class NumberUtilsTest {
}
fail("Expecting "+ expected + " for isCreatable/createNumber using \"" + val + "\" but got " + isValid + " and " + canCreate);
}
+
+ /**
+ * Tests isCreatable(String) and tests that createNumber(String) returns
+ * a valid number iff isCreatable(String) returns false.
+ */
+ @Test
+ public void testIsNumber() {
+ compareIsNumberWithCreateNumber("12345", true);
+ compareIsNumberWithCreateNumber("1234.5", true);
+ compareIsNumberWithCreateNumber(".12345", true);
+ compareIsNumberWithCreateNumber("1234E5", true);
+ compareIsNumberWithCreateNumber("1234E+5", true);
+ compareIsNumberWithCreateNumber("1234E-5", true);
+ compareIsNumberWithCreateNumber("123.4E5", true);
+ compareIsNumberWithCreateNumber("-1234", true);
+ compareIsNumberWithCreateNumber("-1234.5", true);
+ compareIsNumberWithCreateNumber("-.12345", true);
+ compareIsNumberWithCreateNumber("-1234E5", true);
+ compareIsNumberWithCreateNumber("0", true);
+ compareIsNumberWithCreateNumber("-0", true);
+ compareIsNumberWithCreateNumber("01234", true);
+ compareIsNumberWithCreateNumber("-01234", true);
+ compareIsNumberWithCreateNumber("-0xABC123", true);
+ compareIsNumberWithCreateNumber("-0x0", true);
+ compareIsNumberWithCreateNumber("123.4E21D", true);
+ compareIsNumberWithCreateNumber("-221.23F", true);
+ compareIsNumberWithCreateNumber("22338L", true);
+
+ compareIsNumberWithCreateNumber(null, false);
+ compareIsNumberWithCreateNumber("", false);
+ compareIsNumberWithCreateNumber(" ", false);
+ compareIsNumberWithCreateNumber("\r\n\t", false);
+ compareIsNumberWithCreateNumber("--2.3", false);
+ compareIsNumberWithCreateNumber(".12.3", false);
+ compareIsNumberWithCreateNumber("-123E", false);
+ compareIsNumberWithCreateNumber("-123E+-212", false);
+ compareIsNumberWithCreateNumber("-123E2.12", false);
+ compareIsNumberWithCreateNumber("0xGF", false);
+ compareIsNumberWithCreateNumber("0xFAE-1", false);
+ compareIsNumberWithCreateNumber(".", false);
+ compareIsNumberWithCreateNumber("-0ABC123", false);
+ compareIsNumberWithCreateNumber("123.4E-D", false);
+ compareIsNumberWithCreateNumber("123.4ED", false);
+ compareIsNumberWithCreateNumber("1234E5l", false);
+ compareIsNumberWithCreateNumber("11a", false);
+ compareIsNumberWithCreateNumber("1a", false);
+ compareIsNumberWithCreateNumber("a", false);
+ compareIsNumberWithCreateNumber("11g", false);
+ compareIsNumberWithCreateNumber("11z", false);
+ compareIsNumberWithCreateNumber("11def", false);
+ compareIsNumberWithCreateNumber("11d11", false);
+ compareIsNumberWithCreateNumber("11 11", false);
+ compareIsNumberWithCreateNumber(" 1111", false);
+ compareIsNumberWithCreateNumber("1111 ", false);
+
+ compareIsNumberWithCreateNumber("2.", true); // LANG-521
+ compareIsNumberWithCreateNumber("1.1L", false); // LANG-664
+ }
+
+ private void compareIsNumberWithCreateNumber(final String val, final boolean expected) {
+ final boolean isValid = NumberUtils.isNumber(val);
+ final boolean canCreate = checkCreateNumber(val);
+ if (isValid == expected && canCreate == expected) {
+ return;
+ }
+ fail("Expecting "+ expected + " for isCreatable/createNumber using \"" + val + "\" but got " + isValid + " and " + canCreate);
+ }
@Test
public void testIsParsable() {