You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2013/03/27 16:32:25 UTC

svn commit: r1461654 - /commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java

Author: sebb
Date: Wed Mar 27 15:32:24 2013
New Revision: 1461654

URL: http://svn.apache.org/r1461654
Log:
LANG-881 Enhance test so it also checks the exact values

Modified:
    commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java

Modified: commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java
URL: http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java?rev=1461654&r1=1461653&r2=1461654&view=diff
==============================================================================
--- commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java (original)
+++ commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/math/NumberUtilsTest.java Wed Mar 27 15:32:24 2013
@@ -250,28 +250,29 @@ public class NumberUtilsTest {
     @Test
     public void testCreateNumberMagnitude() {
         // Test Float.MAX_VALUE, and same with +1 in final digit to check conversion changes to next Number type
-        assertEquals(Float.class,  NumberUtils.createNumber("3.4028235e+38").getClass());
-        assertEquals(Double.class, NumberUtils.createNumber("3.4028236e+38").getClass());
+        assertEquals(Float.valueOf(Float.MAX_VALUE),  NumberUtils.createNumber("3.4028235e+38"));
+        assertEquals(Double.valueOf(3.4028236e+38),   NumberUtils.createNumber("3.4028236e+38"));
 
         // Test Double.MAX_VALUE
-        assertEquals(Double.class,     NumberUtils.createNumber("1.7976931348623157e+308").getClass());
+        assertEquals(Double.valueOf(Double.MAX_VALUE),          NumberUtils.createNumber("1.7976931348623157e+308"));
         // Test with +2 in final digit (+1 does not cause roll-over to BigDecimal)
-        assertEquals(BigDecimal.class, NumberUtils.createNumber("1.7976931348623159e+308").getClass());
+        assertEquals(new BigDecimal("1.7976931348623159e+308"), NumberUtils.createNumber("1.7976931348623159e+308"));
         
-        assertEquals(Integer.class, NumberUtils.createNumber("0x12345678").getClass());
-        assertEquals(Long.class,    NumberUtils.createNumber("0x123456789").getClass());
+        assertEquals(Integer.valueOf(0x12345678), NumberUtils.createNumber("0x12345678"));
+        assertEquals(Long.valueOf(0x123456789L),  NumberUtils.createNumber("0x123456789"));
 
-        assertEquals(Long.class,       NumberUtils.createNumber("0x7fffffffffffffff").getClass());
-        assertEquals(BigInteger.class, NumberUtils.createNumber("0x7fffffffffffffff0").getClass());
+        assertEquals(Long.valueOf(0x7fffffffffffffffL),      NumberUtils.createNumber("0x7fffffffffffffff"));
+        // Does not appear to be a way to create a literal BigInteger of this magnitude
+        assertEquals(new BigInteger("7fffffffffffffff0",16), NumberUtils.createNumber("0x7fffffffffffffff0"));
 
-        assertEquals(Long.class,       NumberUtils.createNumber("#7fffffffffffffff").getClass());
-        assertEquals(BigInteger.class, NumberUtils.createNumber("#7fffffffffffffff0").getClass());
+        assertEquals(Long.valueOf(0x7fffffffffffffffL),      NumberUtils.createNumber("#7fffffffffffffff"));
+        assertEquals(new BigInteger("7fffffffffffffff0",16), NumberUtils.createNumber("#7fffffffffffffff0"));
 
-        assertEquals(Integer.class, NumberUtils.createNumber("017777777777").getClass()); // 31 bits
-        assertEquals(Long.class,    NumberUtils.createNumber("037777777777").getClass()); // 32 bits
+        assertEquals(Integer.valueOf(017777777777), NumberUtils.createNumber("017777777777")); // 31 bits
+        assertEquals(Long.valueOf(037777777777L),   NumberUtils.createNumber("037777777777")); // 32 bits
 
-        assertEquals(Long.class,       NumberUtils.createNumber("0777777777777777777777").getClass()); // 63 bits
-        assertEquals(BigInteger.class, NumberUtils.createNumber("01777777777777777777777").getClass());// 64 bits
+        assertEquals(Long.valueOf(0777777777777777777777L),      NumberUtils.createNumber("0777777777777777777777")); // 63 bits
+        assertEquals(new BigInteger("1777777777777777777777",8), NumberUtils.createNumber("01777777777777777777777"));// 64 bits
     }
 
     @Test