Update battery usage summary

- Set up different summary for AOSP

Bug: 185855825
Bug: 187667156
Test: make SettingsRoboTests
Change-Id: I94dccfc325ecfcff8013fe4d3b5b65c427dcae5c
This commit is contained in:
Wesley.CW Wang
2021-05-10 18:19:36 +08:00
committed by Wesley Wang
parent 021e6b131f
commit 8d5010f6ec
3 changed files with 59 additions and 7 deletions

View File

@@ -16,6 +16,8 @@
package com.android.settings.fuelgauge;
import static com.android.settings.fuelgauge.PowerUsageSummary.BATTERY_INFO_LOADER;
import static com.android.settings.fuelgauge.PowerUsageSummary.KEY_BATTERY_ERROR;
import static com.android.settings.fuelgauge.PowerUsageSummary.KEY_BATTERY_USAGE;
import static com.google.common.truth.Truth.assertThat;
@@ -37,6 +39,7 @@ import android.os.Bundle;
import android.provider.Settings;
import androidx.loader.app.LoaderManager;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
@@ -83,6 +86,10 @@ public class PowerUsageSummaryTest {
private VisibilityLoggerMixin mVisibilityLoggerMixin;
@Mock
private PreferenceScreen mPreferenceScreen;
@Mock
private Preference mBatteryUsagePreference;
@Mock
private Preference mHelpPreference;
private Context mRealContext;
private TestFragment mFragment;
@@ -102,12 +109,16 @@ public class PowerUsageSummaryTest {
when(mFragment.getActivity()).thenReturn(mSettingsActivity);
when(mFeatureFactory.powerUsageFeatureProvider.getAdditionalBatteryInfoIntent())
.thenReturn(sAdditionalBatteryInfoIntent);
when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mRealContext))
.thenReturn(true);
mFragment.mBatteryUtils = spy(new BatteryUtils(mRealContext));
ReflectionHelpers.setField(mFragment, "mVisibilityLoggerMixin", mVisibilityLoggerMixin);
ReflectionHelpers.setField(mFragment, "mBatteryBroadcastReceiver",
mBatteryBroadcastReceiver);
doReturn(mPreferenceScreen).when(mFragment).getPreferenceScreen();
when(mFragment.getContentResolver()).thenReturn(mContentResolver);
when(mFragment.findPreference(KEY_BATTERY_USAGE)).thenReturn(mBatteryUsagePreference);
when(mFragment.findPreference(KEY_BATTERY_ERROR)).thenReturn(mHelpPreference);
}
@Test
@@ -123,6 +134,30 @@ public class PowerUsageSummaryTest {
assertThat(keys).containsAtLeastElementsIn(niks);
}
@Test
public void initPreference_chartGraphEnabled_hasCorrectSummary() {
mFragment.initPreference();
verify(mBatteryUsagePreference).setSummary("View usage for past 24 hours");
}
@Test
public void initPreference_chartGraphDisabled_hasCorrectSummary() {
when(mFeatureFactory.powerUsageFeatureProvider.isChartGraphEnabled(mRealContext))
.thenReturn(false);
mFragment.initPreference();
verify(mBatteryUsagePreference).setSummary("View usage from last full charge");
}
@Test
public void initPreference_helpPreferenceInvisible() {
mFragment.initPreference();
verify(mHelpPreference).setVisible(false);
}
@Test
public void restartBatteryTipLoader() {
//TODO: add policy logic here when BatteryTipPolicy is implemented