Author: doogie
Date: Mon Mar 1 03:12:53 2010 New Revision: 917364 URL: http://svn.apache.org/viewvc?rev=917364&view=rev Log: BUG FIX: In integer/long to BigDecimal, don't convert the number to a double first. Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NumberConverters.java ofbiz/trunk/framework/base/src/org/ofbiz/base/util/test/ObjectTypeTests.java Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NumberConverters.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NumberConverters.java?rev=917364&r1=917363&r2=917364&view=diff ============================================================================== --- ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NumberConverters.java (original) +++ ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/NumberConverters.java Mon Mar 1 03:12:53 2010 @@ -473,7 +473,7 @@ } public BigDecimal convert(Integer obj) throws ConversionException { - return BigDecimal.valueOf(obj.doubleValue()); + return BigDecimal.valueOf(obj.intValue()); } } @@ -572,7 +572,7 @@ } public BigDecimal convert(Long obj) throws ConversionException { - return BigDecimal.valueOf(obj.doubleValue()); + return BigDecimal.valueOf(obj.longValue()); } } Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/util/test/ObjectTypeTests.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/util/test/ObjectTypeTests.java?rev=917364&r1=917363&r2=917364&view=diff ============================================================================== --- ofbiz/trunk/framework/base/src/org/ofbiz/base/util/test/ObjectTypeTests.java (original) +++ ofbiz/trunk/framework/base/src/org/ofbiz/base/util/test/ObjectTypeTests.java Mon Mar 1 03:12:53 2010 @@ -274,7 +274,7 @@ public void testLong() throws GeneralException { simpleTypeConvertTestSingleMulti("Long->String", Long.valueOf("1234567"), new String[] {"String", "java.lang.String"}, null, localeData, "1,234,567"); - //BUG simpleTypeConvertTestSingleMulti("Long->BigDecimal", lng, new String[] {"BigDecimal", "java.math.BigDecimal"}, new BigDecimal("781")); + simpleTypeConvertTestSingleMulti("Long->BigDecimal", lng, new String[] {"BigDecimal", "java.math.BigDecimal"}, new BigDecimal("781")); simpleTypeConvertTestSingleMulti("Long->Double", lng, new String[] {"Double", "java.lang.Double"}, new Double("781")); simpleTypeConvertTestSingleMulti("Long->Float", lng, new String[] {"Float", "java.lang.Float"}, new Float("781")); simpleTypeConvertTestSingleMulti("Long->Long", lng, new String[] {"Long", "java.lang.Long"}, new Long("781")); @@ -289,7 +289,7 @@ public void testInteger() throws GeneralException { simpleTypeConvertTestSingleMulti("Integer->String", Integer.valueOf("1234567"), new String[] {"String", "java.lang.String"}, null, localeData, "1,234,567"); - //BUG simpleTypeConvertTestSingleMulti("Integer->BigDecimal", intg, new String[] {"BigDecimal", "java.math.BigDecimal"}, new BigDecimal("781")); + simpleTypeConvertTestSingleMulti("Integer->BigDecimal", intg, new String[] {"BigDecimal", "java.math.BigDecimal"}, new BigDecimal("781")); simpleTypeConvertTestSingleMulti("Integer->Double", intg, new String[] {"Double", "java.lang.Double"}, new Double("781")); simpleTypeConvertTestSingleMulti("Integer->Float", intg, new String[] {"Float", "java.lang.Float"}, new Float("781")); simpleTypeConvertTestSingleMulti("Integer->Long", intg, new String[] {"Long", "java.lang.Long"}, lng); |
Free forum by Nabble | Edit this page |