Merge "Fix the battery icon on the battery page when low battery"

This commit is contained in:
Weien Wang
2018-05-31 04:37:05 +00:00
committed by Android (Google) Code Review
4 changed files with 42 additions and 1 deletions

View File

@@ -26,6 +26,7 @@ import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
import android.app.Activity;
import androidx.lifecycle.LifecycleOwner;
@@ -33,6 +34,7 @@ import android.content.Context;
import android.content.Intent;
import android.os.BatteryManager;
import androidx.preference.PreferenceFragment;
import android.os.PowerManager;
import androidx.preference.PreferenceScreen;
import androidx.recyclerview.widget.RecyclerView;
import android.widget.TextView;
@@ -52,8 +54,9 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.shadows.ShadowPowerManager;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(shadows = {
@@ -80,6 +83,7 @@ public class BatteryHeaderPreferenceControllerTest {
private EntityHeaderController mEntityHeaderController;
private BatteryHeaderPreferenceController mController;
private Context mContext;
private PowerManager mPowerManager;
private BatteryMeterView mBatteryMeterView;
private TextView mBatteryPercentText;
private TextView mSummary;
@@ -114,6 +118,8 @@ public class BatteryHeaderPreferenceControllerTest {
mBatteryInfo.batteryLevel = BATTERY_LEVEL;
mPowerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE);
mController = new BatteryHeaderPreferenceController(
mContext, mActivity, mPreferenceFragment, mLifecycle);
mController.mBatteryMeterView = mBatteryMeterView;
@@ -187,4 +193,17 @@ public class BatteryHeaderPreferenceControllerTest {
assertThat(mBatteryMeterView.getCharging()).isTrue();
assertThat(mBatteryPercentText.getText()).isEqualTo("60%");
}
@Test
public void testQuickUpdateHeaderPreference_showPowerSave() {
boolean testValues[] = {false, true};
ShadowPowerManager shadowPowerManager = shadowOf(mPowerManager);
for (boolean value : testValues) {
shadowPowerManager.setIsPowerSaveMode(value);
mController.quickUpdateHeaderPreference();
assertThat(mBatteryMeterView.getPowerSave()).isEqualTo(value);
}
}
}

View File

@@ -86,4 +86,11 @@ public class BatteryMeterViewTest {
verify(mDrawable).setBatteryColorFilter(mAccentColorFilter);
}
@Test
public void testSetBatteryInfo_powerSave_setCorrectly() {
mBatteryMeterView.setPowerSave(true);
assertThat(mBatteryMeterView.getPowerSave()).isEqualTo(true);
}
}