- assertEquals("0",Unit.NOUNIT2.toString(-0.00050));
- assertEquals("0",Unit.NOUNIT2.toString(-0.00051));
- assertEquals("0",Unit.NOUNIT2.toString(-0.00060));
- assertEquals("0",Unit.NOUNIT2.toString(-0.0049));
- assertEquals("0",Unit.NOUNIT2.toString(-0.0050));
- assertEquals("-0.01",Unit.NOUNIT2.toString(-0.0051));
- assertEquals("0",Unit.NOUNIT2.toString(-0.00123));
- assertEquals("-0.01",Unit.NOUNIT2.toString(-0.0123));
- assertEquals("-0.12",Unit.NOUNIT2.toString(-0.1234));
- assertEquals("-1.23",Unit.NOUNIT2.toString(-1.2345));
- assertEquals("-12.3",Unit.NOUNIT2.toString(-12.345));
- assertEquals("-123",Unit.NOUNIT2.toString(-123.456));
- assertEquals("-1235",Unit.NOUNIT2.toString(-1234.5678));
- assertEquals("-12346",Unit.NOUNIT2.toString(-12345.6789));
+ assertEquals("0",Unit.NOUNIT2.toString(-0.00050)); // check boundary of change in format
+
+ // negative number < 0.095 use 3 digit decimal format
+ assertEquals("-0.001",Unit.NOUNIT2.toString(-0.00051)); // check boundary of change in format
+ assertEquals("-0.001",Unit.NOUNIT2.toString(-0.00060));
+
+ // rounding at third digit.
+ assertEquals("-0.001",Unit.NOUNIT2.toString(-0.0014));
+ assertEquals("-0.002",Unit.NOUNIT2.toString(-0.0015)); // round to even
+ assertEquals("-0.002",Unit.NOUNIT2.toString(-0.0016));
+ assertEquals("-0.002",Unit.NOUNIT2.toString(-0.0024));
+ assertEquals("-0.002",Unit.NOUNIT2.toString(-0.0025)); // round to even
+ assertEquals("-0.003",Unit.NOUNIT2.toString(-0.0026));
+ assertEquals("-0.009",Unit.NOUNIT2.toString(-0.0094));
+
+ assertEquals("-0.01",Unit.NOUNIT2.toString(-0.0095)); // no trailing zeros after rounding
+
+ assertEquals("-0.011",Unit.NOUNIT2.toString(-0.0114));
+ assertEquals("-0.012",Unit.NOUNIT2.toString(-0.0115)); // round to even
+ assertEquals("-0.012",Unit.NOUNIT2.toString(-0.0119));
+ assertEquals("-0.012",Unit.NOUNIT2.toString(-0.0124));
+ assertEquals("-0.012",Unit.NOUNIT2.toString(-0.0125)); // round to even
+ assertEquals("-0.013",Unit.NOUNIT2.toString(-0.0129));
+
+ assertEquals("-0.095",Unit.NOUNIT2.toString(-0.0949)); // boundary check
+
+ // negative numbers < 100
+ assertEquals("-0.1",Unit.NOUNIT2.toString(-0.095)); // boundary check
+
+ assertEquals("-0.11",Unit.NOUNIT2.toString(-0.111));
+ assertEquals("-0.12",Unit.NOUNIT2.toString(-0.115)); // round to even
+ assertEquals("-0.12",Unit.NOUNIT2.toString(-0.117));
+ assertEquals("-0.12",Unit.NOUNIT2.toString(-0.121));
+ assertEquals("-0.12",Unit.NOUNIT2.toString(-0.125)); // round to even
+ assertEquals("-0.13",Unit.NOUNIT2.toString(-0.127));
+
+ assertEquals("-1.11",Unit.NOUNIT2.toString(-1.113));
+ assertEquals("-1.12",Unit.NOUNIT2.toString(-1.115)); // round to even
+ assertEquals("-1.12",Unit.NOUNIT2.toString(-1.117));
+ assertEquals("-1.12",Unit.NOUNIT2.toString(-1.123));
+ assertEquals("-1.12",Unit.NOUNIT2.toString(-1.125)); // round to even
+ assertEquals("-1.13",Unit.NOUNIT2.toString(-1.127));
+
+ assertEquals("-12.3",Unit.NOUNIT2.toString(-12.320));
+ assertEquals("-12.4",Unit.NOUNIT2.toString(-12.350)); // round to even
+ assertEquals("-12.4",Unit.NOUNIT2.toString(-12.355));
+ assertEquals("-12.4",Unit.NOUNIT2.toString(-12.420));
+ assertEquals("-12.4",Unit.NOUNIT2.toString(-12.450)); // round to even
+ assertEquals("-12.5",Unit.NOUNIT2.toString(-12.455));
+
+ // negative numbers <= 1E6
+ assertEquals("-123",Unit.NOUNIT2.toString(-123.20));
+ assertEquals("-124",Unit.NOUNIT2.toString(-123.50)); // round to even
+ assertEquals("-124",Unit.NOUNIT2.toString(-123.55));
+ assertEquals("-124",Unit.NOUNIT2.toString(-124.20));
+ assertEquals("-124",Unit.NOUNIT2.toString(-124.50)); // round to even
+ assertEquals("-125",Unit.NOUNIT2.toString(-124.55));
+
+ assertEquals("-1234",Unit.NOUNIT2.toString(-1234.2));
+ assertEquals("-1234",Unit.NOUNIT2.toString(-1234.5)); // round to even
+ assertEquals("-1235",Unit.NOUNIT2.toString(-1234.6));
+ assertEquals("-1235",Unit.NOUNIT2.toString(-1235.2));
+ assertEquals("-1236",Unit.NOUNIT2.toString(-1235.5)); // round to even
+ assertEquals("-1236",Unit.NOUNIT2.toString(-1235.6));
+