You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ba...@apache.org on 2009/11/14 11:10:19 UTC

svn commit: r836149 - in /commons/proper/lang/trunk/src: java/org/apache/commons/lang/builder/EqualsBuilder.java test/org/apache/commons/lang/builder/EqualsBuilderTest.java

Author: bayard
Date: Sat Nov 14 10:10:19 2009
New Revision: 836149

URL: http://svn.apache.org/viewvc?rev=836149&view=rev
Log:
Rolling back r611543 for LANG-393, and removing the special handling of BigDecimal to use compareTo instead of equals because it creates an inequality with HashCodeBuilder [reported in LANG-467 by David Jones]

Modified:
    commons/proper/lang/trunk/src/java/org/apache/commons/lang/builder/EqualsBuilder.java
    commons/proper/lang/trunk/src/test/org/apache/commons/lang/builder/EqualsBuilderTest.java

Modified: commons/proper/lang/trunk/src/java/org/apache/commons/lang/builder/EqualsBuilder.java
URL: http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/java/org/apache/commons/lang/builder/EqualsBuilder.java?rev=836149&r1=836148&r2=836149&view=diff
==============================================================================
--- commons/proper/lang/trunk/src/java/org/apache/commons/lang/builder/EqualsBuilder.java (original)
+++ commons/proper/lang/trunk/src/java/org/apache/commons/lang/builder/EqualsBuilder.java Sat Nov 14 10:10:19 2009
@@ -377,12 +377,8 @@
         }
         Class<?> lhsClass = lhs.getClass();
         if (!lhsClass.isArray()) {
-            if (lhs instanceof java.math.BigDecimal && rhs instanceof java.math.BigDecimal) {
-                isEquals = (((java.math.BigDecimal)lhs).compareTo((java.math.BigDecimal)rhs) == 0);
-            } else {
-                // The simple case, not an array, just test the element
-                isEquals = lhs.equals(rhs);
-            }
+            // The simple case, not an array, just test the element
+            isEquals = lhs.equals(rhs);
         } else if (lhs.getClass() != rhs.getClass()) {
             // Here when we compare different dimensions, for example: a boolean[][] to a boolean[] 
             this.setEquals(false);

Modified: commons/proper/lang/trunk/src/test/org/apache/commons/lang/builder/EqualsBuilderTest.java
URL: http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/test/org/apache/commons/lang/builder/EqualsBuilderTest.java?rev=836149&r1=836148&r2=836149&view=diff
==============================================================================
--- commons/proper/lang/trunk/src/test/org/apache/commons/lang/builder/EqualsBuilderTest.java (original)
+++ commons/proper/lang/trunk/src/test/org/apache/commons/lang/builder/EqualsBuilderTest.java Sat Nov 14 10:10:19 2009
@@ -384,14 +384,6 @@
         assertTrue(new EqualsBuilder().append(Float.POSITIVE_INFINITY, Float.POSITIVE_INFINITY).isEquals());
     }
 
-    // https://issues.apache.org/jira/browse/LANG-393
-    public void testBigDecimal() {
-        BigDecimal o1 = new BigDecimal("2.0");
-        BigDecimal o2 = new BigDecimal("2.00");
-        assertTrue(new EqualsBuilder().append(o1, o1).isEquals());
-        assertTrue(new EqualsBuilder().append(o1, o2).isEquals());
-    }
-
     public void testAccessors() {
         EqualsBuilder equalsBuilder = new EqualsBuilder();
         assertTrue(equalsBuilder.isEquals());