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

Commit b6cae122 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Change def value for LOW_POWER_MODE_TRIGGER_LEVEL"

parents c07124fe da7ac699
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -29,13 +29,15 @@ import com.android.settings.core.TogglePreferenceController;
 */
public class AutoBatterySaverPreferenceController extends TogglePreferenceController implements
        Preference.OnPreferenceChangeListener {
    private static final int LOW_POWER_MODE_TRIGGER_THRESHOLD = 15;
    private final int mDefWarnLevel;

    @VisibleForTesting
    static final String KEY_AUTO_BATTERY_SAVER = "auto_battery_saver";

    public AutoBatterySaverPreferenceController(Context context) {
        super(context, KEY_AUTO_BATTERY_SAVER);
        mDefWarnLevel = mContext.getResources().getInteger(
                com.android.internal.R.integer.config_lowBatteryWarningLevel);
    }

    @Override
@@ -46,7 +48,7 @@ public class AutoBatterySaverPreferenceController extends TogglePreferenceContro
    @Override
    public boolean isChecked() {
        return Settings.Global.getInt(mContext.getContentResolver(),
                Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0) != 0;
                Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, mDefWarnLevel) != 0;
    }

    @Override
@@ -54,7 +56,7 @@ public class AutoBatterySaverPreferenceController extends TogglePreferenceContro
        Settings.Global.putInt(mContext.getContentResolver(),
                Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL,
                isChecked
                        ? LOW_POWER_MODE_TRIGGER_THRESHOLD
                        ? mDefWarnLevel
                        : 0);
        return true;
    }
+4 −1
Original line number Diff line number Diff line
@@ -42,12 +42,15 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro
        LifecycleObserver, OnStart, OnStop, SeekBarPreference.OnPreferenceChangeListener {
    @VisibleForTesting
    static final String KEY_AUTO_BATTERY_SEEK_BAR = "battery_saver_seek_bar";
    private final int mDefWarnLevel;
    private SeekBarPreference mPreference;
    private AutoBatterySaverSettingObserver mContentObserver;

    public AutoBatterySeekBarPreferenceController(Context context, Lifecycle lifecycle) {
        super(context, KEY_AUTO_BATTERY_SEEK_BAR);
        mContentObserver = new AutoBatterySaverSettingObserver(new Handler(Looper.getMainLooper()));
        mDefWarnLevel = mContext.getResources().getInteger(
                com.android.internal.R.integer.config_lowBatteryWarningLevel);
        if (lifecycle != null) {
            lifecycle.addObserver(this);
        }
@@ -94,7 +97,7 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro
    void updatePreference(Preference preference) {
        final ContentResolver contentResolver = mContext.getContentResolver();
        final int level = Settings.Global.getInt(contentResolver,
                Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0);
                Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, mDefWarnLevel);
        if (level == 0) {
            preference.setVisible(false);
        } else {
+10 −1
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import android.support.v14.preference.SwitchPreference;

import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResources;

import org.junit.Before;
import org.junit.Test;
@@ -34,7 +35,8 @@ import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;

@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION, shadows =
        SettingsShadowResources.class)
public class AutoBatterySaverPreferenceControllerTest {

    private AutoBatterySaverPreferenceController mController;
@@ -45,6 +47,8 @@ public class AutoBatterySaverPreferenceControllerTest {
    public void setUp() {
        MockitoAnnotations.initMocks(this);

        SettingsShadowResources.overrideResource(
                com.android.internal.R.integer.config_lowBatteryWarningLevel, 15);
        mContext = RuntimeEnvironment.application;
        mPreference = new SwitchPreference(mContext);
        mController = new AutoBatterySaverPreferenceController(mContext);
@@ -84,4 +88,9 @@ public class AutoBatterySaverPreferenceControllerTest {
                Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0)).isEqualTo(0);
    }

    @Test
    public void testIsChecked_useDefaultValue_returnTrue() {
        assertThat(mController.isChecked()).isTrue();
    }

}
+16 −3
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import android.support.v14.preference.SwitchPreference;

import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResources;
import com.android.settings.widget.SeekBarPreference;
import com.android.settingslib.core.lifecycle.Lifecycle;

@@ -35,9 +36,11 @@ import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;

@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION, shadows =
        SettingsShadowResources.class)
public class AutoBatterySeekBarPreferenceControllerTest {
    private static final int TRIGGER_LEVEL = 15;
    private static final int TRIGGER_LEVEL = 20;
    private static final int DEFAULT_LEVEL = 15;

    private AutoBatterySeekBarPreferenceController mController;
    private Context mContext;
@@ -51,6 +54,8 @@ public class AutoBatterySeekBarPreferenceControllerTest {
        mLifecycleOwner = () -> mLifecycle;
        mLifecycle = new Lifecycle(mLifecycleOwner);

        SettingsShadowResources.overrideResource(
                com.android.internal.R.integer.config_lowBatteryWarningLevel, DEFAULT_LEVEL);
        mContext = RuntimeEnvironment.application;
        mPreference = new SeekBarPreference(mContext);
        mPreference.setMax(100);
@@ -67,6 +72,14 @@ public class AutoBatterySeekBarPreferenceControllerTest {
        assertThat(mPreference.isVisible()).isFalse();
    }

    @Test
    public void testPreference_defaultValue_preferenceVisible() {
        mController.updateState(mPreference);

        assertThat(mPreference.isVisible()).isTrue();
        assertThat(mPreference.getProgress()).isEqualTo(DEFAULT_LEVEL);
    }

    @Test
    public void testPreference_lowPowerLevelNotZero_updatePreference() {
        Settings.Global.putInt(mContext.getContentResolver(),
@@ -74,7 +87,7 @@ public class AutoBatterySeekBarPreferenceControllerTest {
        mController.updateState(mPreference);

        assertThat(mPreference.isVisible()).isTrue();
        assertThat(mPreference.getTitle()).isEqualTo("Turn on automatically at 15%");
        assertThat(mPreference.getTitle()).isEqualTo("Turn on automatically at 20%");
        assertThat(mPreference.getProgress()).isEqualTo(TRIGGER_LEVEL);
    }