test/java/math/BigDecimal/StrippingZerosTest.java

Print this page
rev 7624 : 6480539: BigDecimal.stripTrailingZeros() has no effect on zero itself ("0.0")
Summary: Make stripTrailingZeros() return BigDecimal.ZERO if the BigDecimal is numerically equal to zero.
Reviewed-by: darcy
Contributed-by: Brian Burkhalter <brian.burkhalter@oracle.com>

@@ -43,12 +43,21 @@
             {new BigDecimal("0.12340000000"),   new BigDecimal("0.1234")},
             {new BigDecimal("1234.5678"),       new BigDecimal("1234.5678")},
             {new BigDecimal("1234.56780"),      new BigDecimal("1234.5678")},
             {new BigDecimal("1234.567800000"),  new BigDecimal("1234.5678")},
             {new BigDecimal("0"),               new BigDecimal("0")},
-            {new BigDecimal("0e100"),           new BigDecimal("0e100")},
-            {new BigDecimal("0e-100"),          new BigDecimal("0e-100")},
+            {new BigDecimal("0e2"),             BigDecimal.ZERO},
+            {new BigDecimal("0e-2"),            BigDecimal.ZERO},
+            {new BigDecimal("0e42"),            BigDecimal.ZERO},
+            {new BigDecimal("+0e42"),           BigDecimal.ZERO},
+            {new BigDecimal("-0e42"),           BigDecimal.ZERO},
+            {new BigDecimal("0e-42"),           BigDecimal.ZERO},
+            {new BigDecimal("+0e-42"),          BigDecimal.ZERO},
+            {new BigDecimal("-0e-42"),          BigDecimal.ZERO},
+            {new BigDecimal("0e-2"),            BigDecimal.ZERO},
+            {new BigDecimal("0e100"),           BigDecimal.ZERO},
+            {new BigDecimal("0e-100"),          BigDecimal.ZERO},
             {new BigDecimal("10"),              new BigDecimal("1e1")},
             {new BigDecimal("20"),              new BigDecimal("2e1")},
             {new BigDecimal("100"),             new BigDecimal("1e2")},
             {new BigDecimal("1000000000"),      new BigDecimal("1e9")},
             {new BigDecimal("100000000e1"),     new BigDecimal("1e9")},