diff options
author | Wesley.CW Wang <wesleycwwang@google.com> | 2021-04-01 18:56:57 +0800 |
---|---|---|
committer | Wesley Wang <wesleycwwang@google.com> | 2021-04-07 10:19:10 +0000 |
commit | 50f314e45dd970030df00938c81cbb9289e1ede4 (patch) | |
tree | bfbf1179ebbfe390a620fdb9d596157385332562 | |
parent | acacad4cdf90abbdf6c2caa19592b6ee55d9af2a (diff) | |
download | packages_apps_Settings-50f314e45dd970030df00938c81cbb9289e1ede4.tar.gz packages_apps_Settings-50f314e45dd970030df00938c81cbb9289e1ede4.tar.bz2 packages_apps_Settings-50f314e45dd970030df00938c81cbb9289e1ede4.zip |
Update StringUtil#formatElapsedTime method (2/3)
- Update the usage and the test case
- Update discharging string to follow new string doc
Bug: 183689347
Test: make RunSettingsRoboTests
Change-Id: I1e14e7da8cb02755d8cf6e12626a0d94fad87121
9 files changed, 37 insertions, 15 deletions
diff --git a/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java b/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java index 4c30baa5b2..e502d65404 100644 --- a/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java +++ b/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java @@ -364,7 +364,12 @@ public class AdvancedBluetoothDetailsHeaderController extends BasePreferenceCont final TextView textView = linearLayout.findViewById(R.id.bt_battery_prediction); if (estimateReady == 1) { textView.setVisibility(View.VISIBLE); - textView.setText(StringUtil.formatElapsedTime(mContext, batteryEstimate, false)); + textView.setText( + StringUtil.formatElapsedTime( + mContext, + batteryEstimate, + /* withSeconds */ false, + /* collapseTimeUnit */ false)); } else { textView.setVisibility(View.GONE); } diff --git a/src/com/android/settings/datausage/DataUsageSummaryPreference.java b/src/com/android/settings/datausage/DataUsageSummaryPreference.java index 9cbb921537..f1728b6a02 100644 --- a/src/com/android/settings/datausage/DataUsageSummaryPreference.java +++ b/src/com/android/settings/datausage/DataUsageSummaryPreference.java @@ -318,7 +318,10 @@ public class DataUsageSummaryPreference extends Preference { textResourceId = R.string.no_carrier_update_text; } updateTime = StringUtil.formatElapsedTime( - getContext(), updateAgeMillis, false /* withSeconds */); + getContext(), + updateAgeMillis, + false /* withSeconds */, + false /* collapseTimeUnit */); } carrierInfo.setText(TextUtils.expandTemplate( getContext().getText(textResourceId), diff --git a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java index 399a84d7fe..f4bdfb3f89 100644 --- a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java +++ b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java @@ -229,10 +229,18 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements final long backgroundTimeMs = bundle.getLong(EXTRA_BACKGROUND_TIME); mForegroundPreference.setSummary( TextUtils.expandTemplate(getText(R.string.battery_used_for), - StringUtil.formatElapsedTime(context, foregroundTimeMs, false))); + StringUtil.formatElapsedTime( + context, + foregroundTimeMs, + /* withSeconds */ false, + /* collapseTimeUnit */ false))); mBackgroundPreference.setSummary( TextUtils.expandTemplate(getText(R.string.battery_active_for), - StringUtil.formatElapsedTime(context, backgroundTimeMs, false))); + StringUtil.formatElapsedTime( + context, + backgroundTimeMs, + /* withSeconds */ false, + /* collapseTimeUnit */ false))); } @Override diff --git a/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java b/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java index a55d0d34bf..4053e869f7 100644 --- a/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java +++ b/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java @@ -380,7 +380,7 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro final long usageTimeMs = entry.getTimeInForegroundMs(); if (shouldShowSummary(entry) && usageTimeMs >= DateUtils.MINUTE_IN_MILLIS) { final CharSequence timeSequence = - StringUtil.formatElapsedTime(mContext, usageTimeMs, false); + StringUtil.formatElapsedTime(mContext, usageTimeMs, false, false); preference.setSummary( entry.isHidden() ? timeSequence diff --git a/src/com/android/settings/fuelgauge/BatteryInfo.java b/src/com/android/settings/fuelgauge/BatteryInfo.java index a4dd86c1fa..832936cf6b 100644 --- a/src/com/android/settings/fuelgauge/BatteryInfo.java +++ b/src/com/android/settings/fuelgauge/BatteryInfo.java @@ -263,8 +263,11 @@ public class BatteryInfo { context.getString(chargingLimitedResId, info.batteryPercentString); } else if (chargeTimeMs > 0 && status != BatteryManager.BATTERY_STATUS_FULL) { info.remainingTimeUs = PowerUtil.convertMsToUs(chargeTimeMs); - CharSequence timeString = StringUtil.formatElapsedTime(context, - PowerUtil.convertUsToMs(info.remainingTimeUs), false /* withSeconds */); + final CharSequence timeString = StringUtil.formatElapsedTime( + context, + PowerUtil.convertUsToMs(info.remainingTimeUs), + false /* withSeconds */, + true /* collapseTimeUnit */); int resId = R.string.power_charging_duration; info.remainingLabel = context.getString( R.string.power_remaining_charging_duration_only, timeString); @@ -287,7 +290,7 @@ public class BatteryInfo { context, PowerUtil.convertUsToMs(drainTimeUs), null /* percentageString */, - estimate.isBasedOnUsage() && !shortString + false /* basedOnUsage */ ); info.chargeLabel = PowerUtil.getBatteryRemainingStringFormatted( context, diff --git a/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java b/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java index 0c3f42d53e..3c312b8f7b 100644 --- a/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java +++ b/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2.java @@ -480,7 +480,7 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle return mContext.getString(R.string.wifi_time_remaining, StringUtil.formatElapsedTime( mContext, Duration.between(now, expiryTime).getSeconds() * 1000, - false /* withSeconds */)); + false /* withSeconds */, false /* collapseTimeUnit */)); } // For more than 2 days, show the expiry date diff --git a/tests/robotests/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderControllerTest.java b/tests/robotests/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderControllerTest.java index 215cddb43a..5350d45e43 100644 --- a/tests/robotests/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderControllerTest.java +++ b/tests/robotests/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderControllerTest.java @@ -473,9 +473,9 @@ public class AdvancedBluetoothDetailsHeaderControllerTest { @Test public void showBatteryPredictionIfNecessary_estimateReadyIsAvailable_showCorrectValue() { final String leftBatteryPrediction = - StringUtil.formatElapsedTime(mContext, 12000000, false).toString(); + StringUtil.formatElapsedTime(mContext, 12000000, false, false).toString(); final String rightBatteryPrediction = - StringUtil.formatElapsedTime(mContext, 1200000, false).toString(); + StringUtil.formatElapsedTime(mContext, 1200000, false, false).toString(); mController.showBatteryPredictionIfNecessary(1, 12000000, mLayoutPreference.findViewById(R.id.layout_left)); diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java index afec5cbec3..8eed2cb383 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java @@ -150,10 +150,9 @@ public class BatteryInfoTest { mBatteryUsageStats, estimate, SystemClock.elapsedRealtime() * 1000, true /* shortString */); - // We only add special mention for the long string - assertThat(info.remainingLabel.toString()).contains(ENHANCED_STRING_SUFFIX); + // Both long and short strings should not have extra text + assertThat(info.remainingLabel.toString()).doesNotContain(ENHANCED_STRING_SUFFIX); assertThat(info.suggestionLabel).contains(BATTERY_RUN_OUT_PREFIX); - // shortened string should not have extra text assertThat(info2.remainingLabel.toString()).doesNotContain(ENHANCED_STRING_SUFFIX); assertThat(info2.suggestionLabel).contains(BATTERY_RUN_OUT_PREFIX); } diff --git a/tests/robotests/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2Test.java b/tests/robotests/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2Test.java index 3e0e22f3d1..4360a09cb5 100644 --- a/tests/robotests/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2Test.java +++ b/tests/robotests/src/com/android/settings/wifi/details2/WifiDetailPreferenceController2Test.java @@ -579,7 +579,11 @@ public class WifiDetailPreferenceController2Test { ZoneId.of("Europe/London")); doShouldShowRemainingTimeTest(fakeNow, timeRemainingMs); final String expectedSummary = mContext.getString(R.string.wifi_time_remaining, - StringUtil.formatElapsedTime(mContext, timeRemainingMs, false /* withSeconds */)); + StringUtil.formatElapsedTime( + mContext, + timeRemainingMs, + false /* withSeconds */, + false /* collapseTimeUnit */)); final InOrder inOrder = inOrder(mMockHeaderController); inOrder.verify(mMockHeaderController).setSecondSummary(expectedSummary); |