diff options
| author | 2017-11-17 05:32:56 +0000 | |
|---|---|---|
| committer | 2017-11-17 05:32:56 +0000 | |
| commit | 58180b0282f20e569e3c66b573ec94464a06f19b (patch) | |
| tree | 91be84d45aef6c1af49803ba40c14098fce537e8 | |
| parent | 0f11fd496d38cdce63e63c1d26992e45f8166489 (diff) | |
| parent | 2e97386d9db1616134d9c76d19563028ffdcc66e (diff) | |
Merge "Drop the second unit from elapsed time if zero"
| -rw-r--r-- | core/java/android/text/format/Formatter.java | 6 | ||||
| -rw-r--r-- | core/tests/coretests/src/android/text/format/FormatterTest.java | 16 |
2 files changed, 11 insertions, 11 deletions
diff --git a/core/java/android/text/format/Formatter.java b/core/java/android/text/format/Formatter.java index 2c83fc4d9049..8c90156d159d 100644 --- a/core/java/android/text/format/Formatter.java +++ b/core/java/android/text/format/Formatter.java @@ -355,21 +355,21 @@ public final class Formatter { final Locale locale = localeFromContext(context); final MeasureFormat measureFormat = MeasureFormat.getInstance( locale, MeasureFormat.FormatWidth.SHORT); - if (days >= 2) { + if (days >= 2 || (days > 0 && hours == 0)) { days += (hours+12)/24; return measureFormat.format(new Measure(days, MeasureUnit.DAY)); } else if (days > 0) { return measureFormat.formatMeasures( new Measure(days, MeasureUnit.DAY), new Measure(hours, MeasureUnit.HOUR)); - } else if (hours >= 2) { + } else if (hours >= 2 || (hours > 0 && minutes == 0)) { hours += (minutes+30)/60; return measureFormat.format(new Measure(hours, MeasureUnit.HOUR)); } else if (hours > 0) { return measureFormat.formatMeasures( new Measure(hours, MeasureUnit.HOUR), new Measure(minutes, MeasureUnit.MINUTE)); - } else if (minutes >= 2) { + } else if (minutes >= 2 || (minutes > 0 && seconds == 0)) { minutes += (seconds+30)/60; return measureFormat.format(new Measure(minutes, MeasureUnit.MINUTE)); } else if (minutes > 0) { diff --git a/core/tests/coretests/src/android/text/format/FormatterTest.java b/core/tests/coretests/src/android/text/format/FormatterTest.java index 24e3646e02fc..dee51dcbc7ff 100644 --- a/core/tests/coretests/src/android/text/format/FormatterTest.java +++ b/core/tests/coretests/src/android/text/format/FormatterTest.java @@ -117,13 +117,13 @@ public class FormatterTest { assertEquals("2 days", Formatter.formatShortElapsedTime(mContext, 2 * DAY)); assertEquals("1 day, 23 hr", Formatter.formatShortElapsedTime(mContext, 1 * DAY + 23 * HOUR + 59 * MINUTE)); - assertEquals("1 day, 0 hr", + assertEquals("1 day", Formatter.formatShortElapsedTime(mContext, 1 * DAY + 59 * MINUTE)); - assertEquals("1 day, 0 hr", Formatter.formatShortElapsedTime(mContext, 1 * DAY)); + assertEquals("1 day", Formatter.formatShortElapsedTime(mContext, 1 * DAY)); assertEquals("24 hr", Formatter.formatShortElapsedTime(mContext, 23 * HOUR + 30 * MINUTE)); assertEquals("3 hr", Formatter.formatShortElapsedTime(mContext, 2 * HOUR + 30 * MINUTE)); assertEquals("2 hr", Formatter.formatShortElapsedTime(mContext, 2 * HOUR)); - assertEquals("1 hr, 0 min", Formatter.formatShortElapsedTime(mContext, 1 * HOUR)); + assertEquals("1 hr", Formatter.formatShortElapsedTime(mContext, 1 * HOUR)); assertEquals("60 min", Formatter.formatShortElapsedTime(mContext, 59 * MINUTE + 30 * SECOND)); assertEquals("59 min", @@ -132,7 +132,7 @@ public class FormatterTest { assertEquals("2 min", Formatter.formatShortElapsedTime(mContext, 2 * MINUTE)); assertEquals("1 min, 59 sec", Formatter.formatShortElapsedTime(mContext, 1 * MINUTE + 59 * SECOND + 999)); - assertEquals("1 min, 0 sec", Formatter.formatShortElapsedTime(mContext, 1 * MINUTE)); + assertEquals("1 min", Formatter.formatShortElapsedTime(mContext, 1 * MINUTE)); assertEquals("59 sec", Formatter.formatShortElapsedTime(mContext, 59 * SECOND + 999)); assertEquals("1 sec", Formatter.formatShortElapsedTime(mContext, 1 * SECOND)); assertEquals("0 sec", Formatter.formatShortElapsedTime(mContext, 1)); @@ -154,9 +154,9 @@ public class FormatterTest { mContext, 2 * DAY)); assertEquals("1 day, 23 hr", Formatter.formatShortElapsedTimeRoundingUpToMinutes( mContext, 1 * DAY + 23 * HOUR + 59 * MINUTE)); - assertEquals("1 day, 0 hr", Formatter.formatShortElapsedTimeRoundingUpToMinutes( + assertEquals("1 day", Formatter.formatShortElapsedTimeRoundingUpToMinutes( mContext, 1 * DAY + 59 * MINUTE)); - assertEquals("1 day, 0 hr", Formatter.formatShortElapsedTimeRoundingUpToMinutes( + assertEquals("1 day", Formatter.formatShortElapsedTimeRoundingUpToMinutes( mContext, 1 * DAY)); assertEquals("24 hr", Formatter.formatShortElapsedTimeRoundingUpToMinutes( mContext, 23 * HOUR + 30 * MINUTE)); @@ -164,9 +164,9 @@ public class FormatterTest { mContext, 2 * HOUR + 30 * MINUTE)); assertEquals("2 hr", Formatter.formatShortElapsedTimeRoundingUpToMinutes( mContext, 2 * HOUR)); - assertEquals("1 hr, 0 min", Formatter.formatShortElapsedTimeRoundingUpToMinutes( + assertEquals("1 hr", Formatter.formatShortElapsedTimeRoundingUpToMinutes( mContext, 1 * HOUR)); - assertEquals("1 hr, 0 min", Formatter.formatShortElapsedTimeRoundingUpToMinutes( + assertEquals("1 hr", Formatter.formatShortElapsedTimeRoundingUpToMinutes( mContext, 59 * MINUTE + 30 * SECOND)); assertEquals("59 min", Formatter.formatShortElapsedTimeRoundingUpToMinutes( mContext, 59 * MINUTE)); |