From 77deb463a0bed6f5cf784d16acb35767028c6b5c Mon Sep 17 00:00:00 2001 From: Wesley Wang Date: Fri, 12 May 2023 17:40:05 +0800 Subject: [PATCH] Update battery settings remaining time format - Update the remaining time format to align with status bar - Remove unused test case since no more less than 7 or 15 remaining time case for battery settings screenshots: https://screenshot.googleplex.com/8jPYPj7yznGFU4b.png https://screenshot.googleplex.com/5GYXA2tusSUVmVQ.png https://screenshot.googleplex.com/3EnB3ejAxAzP28q.png https://screenshot.googleplex.com/5jeUxwBEyHotf9d.png Bug: 281685505 Test: make SettingsLibRoboTests Change-Id: If33e1828582845f78d8ef666c2b74ab5bba22357 --- .../settings/fuelgauge/BatteryInfo.java | 13 ++---- .../settings/fuelgauge/BatteryInfoTest.java | 40 ------------------- 2 files changed, 3 insertions(+), 50 deletions(-) diff --git a/src/com/android/settings/fuelgauge/BatteryInfo.java b/src/com/android/settings/fuelgauge/BatteryInfo.java index 98240447aeb..300db23007c 100644 --- a/src/com/android/settings/fuelgauge/BatteryInfo.java +++ b/src/com/android/settings/fuelgauge/BatteryInfo.java @@ -322,18 +322,11 @@ public class BatteryInfo { final long drainTimeUs = PowerUtil.convertMsToUs(estimate.getEstimateMillis()); if (drainTimeUs > 0) { info.remainingTimeUs = drainTimeUs; - info.remainingLabel = PowerUtil.getBatteryRemainingStringFormatted( + info.remainingLabel = PowerUtil.getBatteryRemainingShortStringFormatted( context, - PowerUtil.convertUsToMs(drainTimeUs), - null /* percentageString */, - false /* basedOnUsage */ - ); - info.chargeLabel = PowerUtil.getBatteryRemainingStringFormatted( - context, - PowerUtil.convertUsToMs(drainTimeUs), - info.batteryPercentString, - estimate.isBasedOnUsage() && !shortString + PowerUtil.convertUsToMs(drainTimeUs) ); + info.chargeLabel = info.remainingLabel; info.suggestionLabel = PowerUtil.getBatteryTipStringFormatted( context, PowerUtil.convertUsToMs(drainTimeUs)); } else { diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java index eb4b598823f..ded108cfc89 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java @@ -43,7 +43,6 @@ import com.android.internal.os.BatteryStatsHistoryIterator; import com.android.settings.testutils.BatteryTestUtils; import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.widget.UsageView; -import com.android.settingslib.R; import com.android.settingslib.fuelgauge.Estimate; import org.junit.Before; @@ -163,26 +162,6 @@ public class BatteryInfoTest { assertThat(info2.suggestionLabel).contains(BATTERY_RUN_OUT_PREFIX); } - @Test - public void testGetBatteryInfo_basedOnUsageTrueLessThanSevenMinutes_usesCorrectString() { - Estimate estimate = new Estimate(Duration.ofMinutes(7).toMillis(), - true /* isBasedOnUsage */, - 1000 /* averageDischargeTime */); - BatteryInfo info = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast, - mBatteryUsageStats, estimate, SystemClock.elapsedRealtime() * 1000, - false /* shortString */); - BatteryInfo info2 = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast, - mBatteryUsageStats, estimate, SystemClock.elapsedRealtime() * 1000, - true /* shortString */); - - // These should be identical in either case - assertThat(info.remainingLabel.toString()).isEqualTo( - mContext.getString(R.string.power_remaining_duration_only_shutdown_imminent)); - assertThat(info2.remainingLabel.toString()).isEqualTo( - mContext.getString(R.string.power_remaining_duration_only_shutdown_imminent)); - assertThat(info2.suggestionLabel).contains(BATTERY_RUN_OUT_PREFIX); - } - @Test @Ignore public void getBatteryInfo_MoreThanOneDay_suggestionLabelIsCorrectString() { @@ -196,25 +175,6 @@ public class BatteryInfoTest { assertThat(info.suggestionLabel).doesNotContain(BATTERY_RUN_OUT_PREFIX); } - @Test - public void - testGetBatteryInfo_basedOnUsageTrueBetweenSevenAndFifteenMinutes_usesCorrectString() { - Estimate estimate = new Estimate(Duration.ofMinutes(10).toMillis(), - true /* isBasedOnUsage */, - 1000 /* averageDischargeTime */); - BatteryInfo info = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast, - mBatteryUsageStats, estimate, SystemClock.elapsedRealtime() * 1000, - false /* shortString */); - - // Check that strings are showing less than 15 minutes remaining regardless of exact time. - assertThat(info.chargeLabel.toString()).isEqualTo( - mContext.getString(R.string.power_remaining_less_than_duration, - FIFTEEN_MIN_FORMATTED, TEST_BATTERY_LEVEL_10)); - assertThat(info.remainingLabel.toString()).isEqualTo( - mContext.getString(R.string.power_remaining_less_than_duration_only, - FIFTEEN_MIN_FORMATTED)); - } - @Test public void testGetBatteryInfo_basedOnUsageFalse_usesDefaultString() { BatteryInfo info = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast,