Add test case for bug 43656. Based on a patch from Konstantin Kolinko.
authormarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Sat, 19 Apr 2008 09:44:35 +0000 (09:44 +0000)
committermarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Sat, 19 Apr 2008 09:44:35 +0000 (09:44 +0000)
git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@649783 13f79535-47bb-0310-9956-ffa450edef68

test/org/apache/el/lang/TestELSupport.java [new file with mode: 0644]

diff --git a/test/org/apache/el/lang/TestELSupport.java b/test/org/apache/el/lang/TestELSupport.java
new file mode 100644 (file)
index 0000000..df3a82a
--- /dev/null
@@ -0,0 +1,46 @@
+package org.apache.el.lang;
+
+import java.math.BigDecimal;
+import java.math.BigInteger;
+
+import junit.framework.TestCase;
+
+public class TestELSupport extends TestCase {
+    public void testBigDecimal() {
+        testIsSame(new BigDecimal(
+                "0.123456789012345678901234567890123456789012345678901234567890123456789"));
+    }
+
+    public void testBigInteger() {
+        testIsSame(new BigInteger(
+                "1234567890123456789012345678901234567890123456789012345678901234567890"));
+    }
+
+    public void testLong() {
+        testIsSame(Long.valueOf(0x0102030405060708L));
+    }
+
+    public void testInteger() {
+        testIsSame(Integer.valueOf(0x01020304));
+    }
+
+    public void testShort() {
+        testIsSame(Short.valueOf((short) 0x0102));
+    }
+
+    public void testByte() {
+        testIsSame(Byte.valueOf((byte) 0xEF));
+    }
+
+    public void testDouble() {
+        testIsSame(Double.valueOf(0.123456789012345678901234));
+    }
+
+    public void testFloat() {
+        testIsSame(Float.valueOf(0.123456F));
+    }
+
+    private static void testIsSame(Object value) {
+        assertEquals(value, ELSupport.coerceToNumber(value, value.getClass()));
+    }
+}