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());