summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2017-11-17 05:32:56 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2017-11-17 05:32:56 +0000
commit58180b0282f20e569e3c66b573ec94464a06f19b (patch)
tree91be84d45aef6c1af49803ba40c14098fce537e8
parent0f11fd496d38cdce63e63c1d26992e45f8166489 (diff)
parent2e97386d9db1616134d9c76d19563028ffdcc66e (diff)
Merge "Drop the second unit from elapsed time if zero"
-rw-r--r--core/java/android/text/format/Formatter.java6
-rw-r--r--core/tests/coretests/src/android/text/format/FormatterTest.java16
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));