You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ma...@apache.org on 2008/06/17 03:46:01 UTC

svn commit: r668376 - in /myfaces/trinidad/trunk/trinidad-api/src: main/java/org/apache/myfaces/trinidad/convert/NumberConverter.java test/java/org/apache/myfaces/trinidad/convert/NumberConverterTestCase.java

Author: matzew
Date: Mon Jun 16 18:46:00 2008
New Revision: 668376

URL: http://svn.apache.org/viewvc?rev=668376&view=rev
Log:
TRINIDAD-1124 - numberconverter has issue with bigdecimal

Modified:
    myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/convert/NumberConverter.java
    myfaces/trinidad/trunk/trinidad-api/src/test/java/org/apache/myfaces/trinidad/convert/NumberConverterTestCase.java

Modified: myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/convert/NumberConverter.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/convert/NumberConverter.java?rev=668376&r1=668375&r2=668376&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/convert/NumberConverter.java (original)
+++ myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/convert/NumberConverter.java Mon Jun 16 18:46:00 2008
@@ -208,6 +208,7 @@
     NumberFormat fmt = _getNumberFormat(pattern, type, locale, reqCtx);
     
     DecimalFormat df = (DecimalFormat)fmt;
+    df.setParseBigDecimal(true);
     DecimalFormatSymbols dfs = df.getDecimalFormatSymbols();
 
     // We change the grouping_separator b/c TRINIDAD-849

Modified: myfaces/trinidad/trunk/trinidad-api/src/test/java/org/apache/myfaces/trinidad/convert/NumberConverterTestCase.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-api/src/test/java/org/apache/myfaces/trinidad/convert/NumberConverterTestCase.java?rev=668376&r1=668375&r2=668376&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-api/src/test/java/org/apache/myfaces/trinidad/convert/NumberConverterTestCase.java (original)
+++ myfaces/trinidad/trunk/trinidad-api/src/test/java/org/apache/myfaces/trinidad/convert/NumberConverterTestCase.java Mon Jun 16 18:46:00 2008
@@ -134,6 +134,18 @@
         nconv.setLocale(locales[i]);
         
         Object convValue = nconv.getAsObject(facesContext, component, inputValues[i]);
+
+        // Trinidad does BigDecimal, for some reasons.
+        // see TRINIDAD-1124
+        if(i==2)
+        {
+          convValue = ((Number) convValue).doubleValue();
+        }
+        else
+        {
+          convValue = ((Number) convValue).longValue();
+        }
+
         assertEquals(expectedValues[i], convValue);
         
         String outValue = nconv.getAsString(facesContext, component, expectedValues[i]);
@@ -410,7 +422,7 @@
       // if we get a valid object, implies locale was indeed picked up.
       // otherwise we would have got a null pointer exception or other exception
       Object value = converter.getAsObject(facesContext, component, input);
-      assertEquals(new Double(1234.56), value);
+      assertEquals(new Double(1234.56), ((Number)value).doubleValue());
     }
     finally
     {