Fix battery saver switch test case

- Fix the test fail which cause by ag/21784766, and also mentioned at
   ag/21644522

Bug: 260380584
Test: make SettingsRoboTests
Change-Id: I72a7a24f57a7eeeacefeb40eef3025398329379b
This commit is contained in:
Wesley Wang
2023-03-07 17:47:13 +08:00
parent aae628ab64
commit 5d18287b3b
2 changed files with 16 additions and 8 deletions

View File

@@ -118,7 +118,7 @@ public class BatterySaverButtonPreferenceController extends
@Override
public boolean setChecked(boolean stateOn) {
return BatterySaverUtils.setPowerSaveMode(mContext, stateOn,
true /* needFirstTimeWarning */);
false /* needFirstTimeWarning */);
}
@Override

View File

@@ -18,17 +18,13 @@ package com.android.settings.fuelgauge.batterysaver;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.content.Intent;
import android.os.PowerManager;
import android.provider.Settings;
import android.provider.SettingsSlicesContract;
@@ -85,6 +81,15 @@ public class BatterySaverButtonPreferenceControllerTest {
assertThat(mPreference.isChecked()).isFalse();
}
@Test
public void onSwitchChanged_isCheckedAndAcked_setPowerSaveMode() {
setLowPowerWarningAcked(/* acked= */ 1);
mController.onSwitchChanged(/* switchView= */ null, /* isChecked= */ true);
verify(mPowerManager).setPowerSaveModeEnabled(true);
}
@Test
public void updateState_lowPowerOn_preferenceIsChecked() {
when(mPowerManager.isPowerSaveMode()).thenReturn(true);
@@ -104,11 +109,10 @@ public class BatterySaverButtonPreferenceControllerTest {
}
@Test
public void setChecked_on_showWarningMessage() {
public void setChecked_on_setPowerSaveMode() {
mController.setChecked(true);
verify(mContext).sendBroadcast(any(Intent.class));
verify(mPowerManager, never()).setPowerSaveModeEnabled(anyBoolean());
verify(mPowerManager).setPowerSaveModeEnabled(true);
}
@Test
@@ -143,5 +147,9 @@ public class BatterySaverButtonPreferenceControllerTest {
mContext.getContentResolver(),
Settings.Secure.LOW_POWER_WARNING_ACKNOWLEDGED,
acked);
Settings.Secure.putInt(
mContext.getContentResolver(),
Settings.Secure.EXTRA_LOW_POWER_WARNING_ACKNOWLEDGED,
acked);
}
}