Merge "Update subtitle for apps in battery settings" into oc-dev

am: 031b90541f

Change-Id: Ia0581b295824b73ef36f931066b883cff51fc0e9
This commit is contained in:
jackqdyulei
2017-06-09 02:57:46 +00:00
committed by android-build-merger
2 changed files with 21 additions and 8 deletions

View File

@@ -608,7 +608,7 @@ public class PowerUsageSummary extends PowerUsageBase implements
sipper.usageTimeMs = mBatteryUtils.getProcessTimeMs(
BatteryUtils.StatusType.FOREGROUND, sipper.uidObj, mStatsType);
}
setUsageSummary(pref, sipper.usageTimeMs);
setUsageSummary(pref, sipper);
if ((sipper.drainType != DrainType.APP
|| sipper.uidObj.getUid() == Process.ROOT_UID)
&& sipper.drainType != DrainType.USER) {
@@ -684,12 +684,13 @@ public class PowerUsageSummary extends PowerUsageBase implements
}
@VisibleForTesting
void setUsageSummary(Preference preference, long usageTimeMs) {
void setUsageSummary(Preference preference, BatterySipper sipper) {
// Only show summary when usage time is longer than one minute
final long usageTimeMs = sipper.usageTimeMs;
if (usageTimeMs >= DateUtils.MINUTE_IN_MILLIS) {
final CharSequence timeSequence = Utils.formatElapsedTime(getContext(), usageTimeMs,
false);
preference.setSummary(
preference.setSummary(mBatteryUtils.shouldHideSipper(sipper) ? timeSequence :
TextUtils.expandTemplate(getText(R.string.battery_screen_usage), timeSequence));
}
}

View File

@@ -312,21 +312,33 @@ public class PowerUsageSummaryTest {
@Test
public void testSetUsageSummary_timeLessThanOneMinute_DoNotSetSummary() {
final long usageTimeMs = 59 * DateUtils.SECOND_IN_MILLIS;
mNormalBatterySipper.usageTimeMs = 59 * DateUtils.SECOND_IN_MILLIS;
mFragment.setUsageSummary(mPreference, usageTimeMs);
mFragment.setUsageSummary(mPreference, mNormalBatterySipper);
assertThat(mPreference.getSummary()).isNull();
}
@Test
public void testSetUsageSummary_timeMoreThanOneMinute_setSummary() {
final long usageTimeMs = 2 * DateUtils.MINUTE_IN_MILLIS;
public void testSetUsageSummary_timeMoreThanOneMinute_normalApp_setScreenSummary() {
mNormalBatterySipper.usageTimeMs = 2 * DateUtils.MINUTE_IN_MILLIS;
doReturn(mRealContext.getText(R.string.battery_screen_usage)).when(mFragment).getText(
R.string.battery_screen_usage);
doReturn(mRealContext).when(mFragment).getContext();
final String expectedSummary = "Screen usage 2m";
mFragment.setUsageSummary(mPreference, usageTimeMs);
mFragment.setUsageSummary(mPreference, mNormalBatterySipper);
assertThat(mPreference.getSummary().toString()).isEqualTo(expectedSummary);
}
@Test
public void testSetUsageSummary_timeMoreThanOneMinute_hiddenApp_setUsedSummary() {
mNormalBatterySipper.usageTimeMs = 2 * DateUtils.MINUTE_IN_MILLIS;
doReturn(true).when(mFragment.mBatteryUtils).shouldHideSipper(mNormalBatterySipper);
doReturn(mRealContext).when(mFragment).getContext();
final String expectedSummary = "2m";
mFragment.setUsageSummary(mPreference, mNormalBatterySipper);
assertThat(mPreference.getSummary().toString()).isEqualTo(expectedSummary);
}