Loading src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceController.java +5 −3 Original line number Diff line number Diff line Loading @@ -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 Loading @@ -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 Loading @@ -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; } Loading src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceController.java +4 −1 Original line number Diff line number Diff line Loading @@ -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); } Loading Loading @@ -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 { Loading tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceControllerTest.java +10 −1 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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; Loading @@ -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); Loading Loading @@ -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(); } } tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceControllerTest.java +16 −3 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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; Loading @@ -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); Loading @@ -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(), Loading @@ -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); } Loading Loading
src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceController.java +5 −3 Original line number Diff line number Diff line Loading @@ -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 Loading @@ -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 Loading @@ -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; } Loading
src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceController.java +4 −1 Original line number Diff line number Diff line Loading @@ -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); } Loading Loading @@ -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 { Loading
tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceControllerTest.java +10 −1 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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; Loading @@ -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); Loading Loading @@ -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(); } }
tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceControllerTest.java +16 −3 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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; Loading @@ -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); Loading @@ -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(), Loading @@ -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); } Loading