Merge "Refine the update process of battery tip" into pi-dev

This commit is contained in:
Lei Yu
2018-03-30 19:56:46 +00:00
committed by Android (Google) Code Review
6 changed files with 64 additions and 8 deletions

View File

@@ -352,6 +352,14 @@ public class PowerUsageSummaryTest {
R.string.advanced_battery_title);
}
@Test
public void testRefreshUi_deviceRotate_doNotUpdateBatteryTip() {
mFragment.mNeedUpdateBatteryTip = false;
mFragment.refreshUi();
verify(mFragment, never()).restartBatteryTipLoader();
}
public static class TestFragment extends PowerUsageSummary {
private Context mContext;
@@ -364,12 +372,6 @@ public class PowerUsageSummaryTest {
return mContext;
}
@Override
protected void refreshUi() {
// Leave it empty for toggle apps menu test
}
@Override
void showBothEstimates() {
List<BatteryInfo> fakeBatteryInfo = new ArrayList<>(2);

View File

@@ -28,6 +28,7 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.os.Bundle;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceCategory;
import android.support.v7.preference.PreferenceGroup;
@@ -133,6 +134,21 @@ public class BatteryTipPreferenceControllerTest {
BatteryTip.StateType.NEW);
}
@Test
public void testSaveAndRestore() {
mBatteryTipPreferenceController.updateBatteryTips(mOldBatteryTips);
final Bundle bundle = new Bundle();
mBatteryTipPreferenceController.saveInstanceState(bundle);
final BatteryTipPreferenceController controller = new BatteryTipPreferenceController(
mContext, KEY_PREF, mSettingsActivity, mFragment, mBatteryTipListener);
controller.mPreferenceGroup = mPreferenceGroup;
controller.mPrefContext = mContext;
controller.restoreInstanceState(bundle);
assertOnlyContainsSummaryTip(mPreferenceGroup);
}
@Test
public void testHandlePreferenceTreeClick_noDialog_invokeCallback() {
when(mBatteryTip.getType()).thenReturn(SMART_BATTERY_MANAGER);

View File

@@ -148,6 +148,13 @@ public class RestrictAppTipTest {
assertThat(mNewBatteryTip.getState()).isEqualTo(BatteryTip.StateType.HANDLED);
}
@Test
public void update_handledAnomlayBecomeInvisible_stateInvisible() {
mHandledBatteryTip.updateState(mInvisibleBatteryTip);
assertThat(mHandledBatteryTip.getState()).isEqualTo(BatteryTip.StateType.INVISIBLE);
}
@Test
public void update_newAnomalyComes_stateNew() {
mInvisibleBatteryTip.updateState(mNewBatteryTip);