This is an automated email from the ASF dual-hosted git repository. ggregory pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-lang.git
The following commit(s) were added to refs/heads/master by this push: new 56006a6cd Add ReflectionDiffBuilderTest.testBigDecimalDifference() 56006a6cd is described below commit 56006a6cd7e4687dd74be198839d8a4c2f726de1 Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Tue Nov 5 09:54:36 2024 -0500 Add ReflectionDiffBuilderTest.testBigDecimalDifference() - 2.0 is not equal to 2.00, see BigDecimal#equals() - Add ReflectionDiffBuilderTest.testBigIntegerDifference() --- .../commons/lang3/builder/EqualsBuilderTest.java | 2 +- .../lang3/builder/ReflectionDiffBuilderTest.java | 24 ++++++++++++++++++++-- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/src/test/java/org/apache/commons/lang3/builder/EqualsBuilderTest.java b/src/test/java/org/apache/commons/lang3/builder/EqualsBuilderTest.java index 114c50485..0adb9a519 100644 --- a/src/test/java/org/apache/commons/lang3/builder/EqualsBuilderTest.java +++ b/src/test/java/org/apache/commons/lang3/builder/EqualsBuilderTest.java @@ -384,7 +384,7 @@ public class EqualsBuilderTest extends AbstractLangTest { testBigDecimalNotEq(BigDecimal.valueOf(20, 1), BigDecimal.valueOf(200, 2)); } - public void testBigDecimalNotEq(final BigDecimal o1, final BigDecimal o2) { + private void testBigDecimalNotEq(final BigDecimal o1, final BigDecimal o2) { assertNotEquals(o1, o2); assertTrue(new EqualsBuilder().append(o1, o1).isEquals()); assertFalse(new EqualsBuilder().append(o1, o2).isEquals()); diff --git a/src/test/java/org/apache/commons/lang3/builder/ReflectionDiffBuilderTest.java b/src/test/java/org/apache/commons/lang3/builder/ReflectionDiffBuilderTest.java index 127ff9a23..cf97f0d2b 100644 --- a/src/test/java/org/apache/commons/lang3/builder/ReflectionDiffBuilderTest.java +++ b/src/test/java/org/apache/commons/lang3/builder/ReflectionDiffBuilderTest.java @@ -55,8 +55,8 @@ public class ReflectionDiffBuilderTest extends AbstractLangTest { private final Object objectField = null; private final Object[] objectArrayField = { null }; private transient String transientField; - private final BigDecimal bigDecimal = BigDecimal.valueOf(2.0); - private final BigInteger bigInteger = BigInteger.valueOf(2); + private BigDecimal bigDecimal = BigDecimal.valueOf(20, 1); + private BigInteger bigInteger = BigInteger.valueOf(2); @DiffExclude private String annotatedField = "a"; private String excludedField = "a"; @@ -89,6 +89,26 @@ public class ReflectionDiffBuilderTest extends AbstractLangTest { assertEquals(1, list.getNumberOfDiffs()); } + @Test + public void testBigDecimalDifference() { + final TypeTestClass firstObject = new TypeTestClass(); + // 2.0 is not equal to 2.00, see BigDecimal#equals() + firstObject.bigDecimal = BigDecimal.valueOf(200, 2); + final TypeTestClass secondObject = new TypeTestClass(); + final DiffResult list = firstObject.diff(secondObject); + assertEquals(1, list.getNumberOfDiffs()); + } + + @Test + public void testBigIntegerDifference() { + final TypeTestClass firstObject = new TypeTestClass(); + firstObject.bigInteger = BigInteger.valueOf(100); + final TypeTestClass secondObject = new TypeTestClass(); + + final DiffResult list = firstObject.diff(secondObject); + assertEquals(1, list.getNumberOfDiffs()); + } + @Test public void testDifferenceInInherited_field() { final TypeTestChildClass firstObject = new TypeTestChildClass();