Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 65250538 authored by jackqdyulei's avatar jackqdyulei Committed by android-build-merger
Browse files

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

am: 031b9054

Change-Id: Ia0581b295824b73ef36f931066b883cff51fc0e9
parents bdc08169 031b9054
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -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));
        }
    }
+17 −5
Original line number Diff line number Diff line
@@ -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);
    }