From c7faabf40832c3ce900ff3cf7622da2b2a536237 Mon Sep 17 00:00:00 2001 From: Jan Nordqvist Date: Fri, 16 Mar 2018 16:14:28 -0700 Subject: [PATCH] Add the string "No time remaining" when remaining time <= 0. Bug: 70950124 Test: manual Test: make RunSettingsRoboTests Change-Id: Id8ff1dde78f3389b5ab15120a2460ab19e895c6f --- res/values/strings.xml | 6 ++--- .../datausage/DataUsageSummaryPreference.java | 22 +++++++++---------- .../DataUsageSummaryPreferenceTest.java | 4 ++-- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/res/values/strings.xml b/res/values/strings.xml index 9f2fe1bbcb4..17bbfead2dd 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -8764,15 +8764,15 @@ ^1 left - - %d days left - %d day left %d days left + + No time remaining + Less than 1 day left diff --git a/src/com/android/settings/datausage/DataUsageSummaryPreference.java b/src/com/android/settings/datausage/DataUsageSummaryPreference.java index e8715aac296..16b917a718e 100644 --- a/src/com/android/settings/datausage/DataUsageSummaryPreference.java +++ b/src/com/android/settings/datausage/DataUsageSummaryPreference.java @@ -185,18 +185,18 @@ public class DataUsageSummaryPreference extends Preference { } private void updateCycleTimeText(PreferenceViewHolder holder) { - float daysLeft = - ((float) mCycleEndTimeMs - System.currentTimeMillis()) / MILLIS_IN_A_DAY; - if (daysLeft < 0) { - daysLeft = 0; - } - TextView cycleTime = (TextView) holder.findViewById(R.id.cycle_left_time); - cycleTime.setText( - (daysLeft > 0 && daysLeft < 1) - ? getContext().getString(R.string.billing_cycle_less_than_one_day_left) - : getContext().getResources().getQuantityString( - R.plurals.billing_cycle_days_left, (int) daysLeft, (int) daysLeft)); + + long millisLeft = mCycleEndTimeMs - System.currentTimeMillis(); + if (millisLeft <= 0) { + cycleTime.setText(getContext().getString(R.string.billing_cycle_none_left)); + } else { + int daysLeft = (int)(millisLeft / MILLIS_IN_A_DAY); + cycleTime.setText(daysLeft < 1 + ? getContext().getString(R.string.billing_cycle_less_than_one_day_left) + : getContext().getResources().getQuantityString( + R.plurals.billing_cycle_days_left, daysLeft, daysLeft)); + } } diff --git a/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceTest.java b/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceTest.java index 638ee792045..58e42a00ccb 100644 --- a/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceTest.java +++ b/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceTest.java @@ -179,7 +179,7 @@ public class DataUsageSummaryPreferenceTest { } @Test - public void testSetUsageInfo_cycleRemainingTimeNegativeDaysLeft_shouldDisplayZeroDays() { + public void testSetUsageInfo_cycleRemainingTimeNegativeDaysLeft_shouldDisplayNoneLeft() { final long cycleEnd = System.currentTimeMillis() - 1L; mSummaryPreference.setUsageInfo(cycleEnd, mUpdateTime, DUMMY_CARRIER, 0 /* numPlans */, new Intent()); @@ -187,7 +187,7 @@ public class DataUsageSummaryPreferenceTest { bindViewHolder(); assertThat(mCycleTime.getVisibility()).isEqualTo(View.VISIBLE); assertThat(mCycleTime.getText()).isEqualTo( - mContext.getResources().getQuantityString(R.plurals.billing_cycle_days_left, 0, 0)); + mContext.getString(R.string.billing_cycle_none_left)); } @Test