PowerUsageSummary: move controllers to xml
Also change the following controllers to have standard constructor 1. BatteryHeaderPreferenceController 2. BatteryTipPreferenceController Change-Id: I2e68082295eb8ef18de9fef9483a10b070c77a47 Fixes: 111131567 Test: robotest
This commit is contained in:
@@ -23,12 +23,16 @@
|
|||||||
|
|
||||||
<com.android.settings.applications.LayoutPreference
|
<com.android.settings.applications.LayoutPreference
|
||||||
android:key="battery_header"
|
android:key="battery_header"
|
||||||
|
android:title="@string/summary_placeholder"
|
||||||
android:selectable="false"
|
android:selectable="false"
|
||||||
android:layout="@layout/battery_header" />
|
android:layout="@layout/battery_header"
|
||||||
|
settings:controller="com.android.settings.fuelgauge.BatteryHeaderPreferenceController" />
|
||||||
|
|
||||||
<PreferenceCategory
|
<PreferenceCategory
|
||||||
android:key="battery_tip"
|
android:key="battery_tip"
|
||||||
android:layout="@layout/preference_category_no_label" />
|
android:title="@string/summary_placeholder"
|
||||||
|
android:layout="@layout/preference_category_no_label"
|
||||||
|
settings:controller="com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController" />
|
||||||
|
|
||||||
<Preference
|
<Preference
|
||||||
android:fragment="com.android.settings.fuelgauge.batterysaver.BatterySaverSettings"
|
android:fragment="com.android.settings.fuelgauge.batterysaver.BatterySaverSettings"
|
||||||
@@ -47,7 +51,8 @@
|
|||||||
<SwitchPreference
|
<SwitchPreference
|
||||||
android:key="battery_percentage"
|
android:key="battery_percentage"
|
||||||
android:title="@string/battery_percentage"
|
android:title="@string/battery_percentage"
|
||||||
android:summary="@string/battery_percentage_description" />
|
android:summary="@string/battery_percentage_description"
|
||||||
|
settings:controller="com.android.settings.display.BatteryPercentagePreferenceController" />
|
||||||
|
|
||||||
|
|
||||||
<com.android.settings.fuelgauge.PowerGaugePreference
|
<com.android.settings.fuelgauge.PowerGaugePreference
|
||||||
|
@@ -21,8 +21,8 @@ import android.content.Context;
|
|||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
import com.android.internal.R;
|
import com.android.internal.R;
|
||||||
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.core.PreferenceControllerMixin;
|
import com.android.settings.core.PreferenceControllerMixin;
|
||||||
import com.android.settingslib.core.AbstractPreferenceController;
|
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.SwitchPreference;
|
import androidx.preference.SwitchPreference;
|
||||||
@@ -31,24 +31,18 @@ import androidx.preference.SwitchPreference;
|
|||||||
* A controller to manage the switch for showing battery percentage in the status bar.
|
* A controller to manage the switch for showing battery percentage in the status bar.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class BatteryPercentagePreferenceController extends AbstractPreferenceController implements
|
public class BatteryPercentagePreferenceController extends BasePreferenceController implements
|
||||||
PreferenceControllerMixin, Preference.OnPreferenceChangeListener {
|
PreferenceControllerMixin, Preference.OnPreferenceChangeListener {
|
||||||
|
|
||||||
private static final String KEY_BATTERY_PERCENTAGE = "battery_percentage";
|
public BatteryPercentagePreferenceController(Context context, String preferenceKey) {
|
||||||
|
super(context, preferenceKey);
|
||||||
public BatteryPercentagePreferenceController(Context context) {
|
|
||||||
super(context);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isAvailable() {
|
public int getAvailabilityStatus() {
|
||||||
return mContext.getResources()
|
return mContext.getResources().getBoolean(
|
||||||
.getBoolean(R.bool.config_battery_percentage_setting_available);
|
R.bool.config_battery_percentage_setting_available) ? AVAILABLE
|
||||||
}
|
: UNSUPPORTED_ON_DEVICE;
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getPreferenceKey() {
|
|
||||||
return KEY_BATTERY_PERCENTAGE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -27,6 +27,7 @@ import android.widget.TextView;
|
|||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.applications.LayoutPreference;
|
import com.android.settings.applications.LayoutPreference;
|
||||||
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.core.PreferenceControllerMixin;
|
import com.android.settings.core.PreferenceControllerMixin;
|
||||||
import com.android.settings.widget.EntityHeaderController;
|
import com.android.settings.widget.EntityHeaderController;
|
||||||
import com.android.settingslib.Utils;
|
import com.android.settingslib.Utils;
|
||||||
@@ -42,7 +43,7 @@ import androidx.preference.PreferenceScreen;
|
|||||||
/**
|
/**
|
||||||
* Controller that update the battery header view
|
* Controller that update the battery header view
|
||||||
*/
|
*/
|
||||||
public class BatteryHeaderPreferenceController extends AbstractPreferenceController
|
public class BatteryHeaderPreferenceController extends BasePreferenceController
|
||||||
implements PreferenceControllerMixin, LifecycleObserver, OnStart {
|
implements PreferenceControllerMixin, LifecycleObserver, OnStart {
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
static final String KEY_BATTERY_HEADER = "battery_header";
|
static final String KEY_BATTERY_HEADER = "battery_header";
|
||||||
@@ -56,30 +57,35 @@ public class BatteryHeaderPreferenceController extends AbstractPreferenceControl
|
|||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
TextView mSummary2;
|
TextView mSummary2;
|
||||||
|
|
||||||
private final Activity mActivity;
|
private Activity mActivity;
|
||||||
private final PreferenceFragmentCompat mHost;
|
private PreferenceFragmentCompat mHost;
|
||||||
private final Lifecycle mLifecycle;
|
private Lifecycle mLifecycle;
|
||||||
private final PowerManager mPowerManager;
|
private final PowerManager mPowerManager;
|
||||||
|
|
||||||
private LayoutPreference mBatteryLayoutPref;
|
private LayoutPreference mBatteryLayoutPref;
|
||||||
|
|
||||||
public BatteryHeaderPreferenceController(Context context, Activity activity,
|
public BatteryHeaderPreferenceController(Context context, String key) {
|
||||||
PreferenceFragmentCompat host, Lifecycle lifecycle) {
|
super(context, key);
|
||||||
super(context);
|
|
||||||
mActivity = activity;
|
|
||||||
mHost = host;
|
|
||||||
mLifecycle = lifecycle;
|
|
||||||
if (mLifecycle != null) {
|
|
||||||
mLifecycle.addObserver(this);
|
|
||||||
}
|
|
||||||
mPowerManager = context.getSystemService(PowerManager.class);
|
mPowerManager = context.getSystemService(PowerManager.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setActivity(Activity activity) {
|
||||||
|
mActivity = activity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFragment(PreferenceFragmentCompat fragment) {
|
||||||
|
mHost = fragment;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLifecycle(Lifecycle lifecycle) {
|
||||||
|
mLifecycle = lifecycle;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void displayPreference(PreferenceScreen screen) {
|
public void displayPreference(PreferenceScreen screen) {
|
||||||
super.displayPreference(screen);
|
super.displayPreference(screen);
|
||||||
mBatteryLayoutPref = (LayoutPreference) screen.findPreference(KEY_BATTERY_HEADER);
|
mBatteryLayoutPref = (LayoutPreference) screen.findPreference(getPreferenceKey());
|
||||||
mBatteryMeterView = (BatteryMeterView) mBatteryLayoutPref
|
mBatteryMeterView = mBatteryLayoutPref
|
||||||
.findViewById(R.id.battery_header_icon);
|
.findViewById(R.id.battery_header_icon);
|
||||||
mBatteryPercentText = mBatteryLayoutPref.findViewById(R.id.battery_percent);
|
mBatteryPercentText = mBatteryLayoutPref.findViewById(R.id.battery_percent);
|
||||||
mSummary1 = mBatteryLayoutPref.findViewById(R.id.summary1);
|
mSummary1 = mBatteryLayoutPref.findViewById(R.id.summary1);
|
||||||
@@ -89,13 +95,8 @@ public class BatteryHeaderPreferenceController extends AbstractPreferenceControl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isAvailable() {
|
public int getAvailabilityStatus() {
|
||||||
return true;
|
return AVAILABLE_UNSEARCHABLE;
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getPreferenceKey() {
|
|
||||||
return KEY_BATTERY_HEADER;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -25,7 +25,6 @@ import android.os.Bundle;
|
|||||||
import android.provider.SearchIndexableResource;
|
import android.provider.SearchIndexableResource;
|
||||||
import android.text.BidiFormatter;
|
import android.text.BidiFormatter;
|
||||||
import android.text.format.Formatter;
|
import android.text.format.Formatter;
|
||||||
import android.util.SparseArray;
|
|
||||||
import android.view.Menu;
|
import android.view.Menu;
|
||||||
import android.view.MenuInflater;
|
import android.view.MenuInflater;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
@@ -40,19 +39,15 @@ import com.android.settings.Utils;
|
|||||||
import com.android.settings.applications.LayoutPreference;
|
import com.android.settings.applications.LayoutPreference;
|
||||||
import com.android.settings.core.SubSettingLauncher;
|
import com.android.settings.core.SubSettingLauncher;
|
||||||
import com.android.settings.dashboard.SummaryLoader;
|
import com.android.settings.dashboard.SummaryLoader;
|
||||||
import com.android.settings.display.BatteryPercentagePreferenceController;
|
|
||||||
import com.android.settings.fuelgauge.batterytip.BatteryTipLoader;
|
import com.android.settings.fuelgauge.batterytip.BatteryTipLoader;
|
||||||
import com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController;
|
import com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController;
|
||||||
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
|
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
import com.android.settings.search.BaseSearchIndexProvider;
|
import com.android.settings.search.BaseSearchIndexProvider;
|
||||||
import com.android.settingslib.core.AbstractPreferenceController;
|
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
|
||||||
import com.android.settingslib.search.SearchIndexable;
|
import com.android.settingslib.search.SearchIndexable;
|
||||||
import com.android.settingslib.utils.PowerUtil;
|
import com.android.settingslib.utils.PowerUtil;
|
||||||
import com.android.settingslib.utils.StringUtil;
|
import com.android.settingslib.utils.StringUtil;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -197,6 +192,22 @@ public class PowerUsageSummary extends PowerUsageBase implements OnLongClickList
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAttach(Context context) {
|
||||||
|
super.onAttach(context);
|
||||||
|
final SettingsActivity activity = (SettingsActivity) getActivity();
|
||||||
|
|
||||||
|
mBatteryHeaderPreferenceController = use(BatteryHeaderPreferenceController.class);
|
||||||
|
mBatteryHeaderPreferenceController.setActivity(activity);
|
||||||
|
mBatteryHeaderPreferenceController.setFragment(this);
|
||||||
|
mBatteryHeaderPreferenceController.setLifecycle(getSettingsLifecycle());
|
||||||
|
|
||||||
|
mBatteryTipPreferenceController = use(BatteryTipPreferenceController.class);
|
||||||
|
mBatteryTipPreferenceController.setActivity(activity);
|
||||||
|
mBatteryTipPreferenceController.setFragment(this);
|
||||||
|
mBatteryTipPreferenceController.setBatteryTipListener(this::onBatteryTipHandled);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate(Bundle icicle) {
|
public void onCreate(Bundle icicle) {
|
||||||
super.onCreate(icicle);
|
super.onCreate(icicle);
|
||||||
@@ -231,22 +242,6 @@ public class PowerUsageSummary extends PowerUsageBase implements OnLongClickList
|
|||||||
return R.xml.power_usage_summary;
|
return R.xml.power_usage_summary;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
|
|
||||||
final Lifecycle lifecycle = getSettingsLifecycle();
|
|
||||||
final SettingsActivity activity = (SettingsActivity) getActivity();
|
|
||||||
final List<AbstractPreferenceController> controllers = new ArrayList<>();
|
|
||||||
mBatteryHeaderPreferenceController = new BatteryHeaderPreferenceController(
|
|
||||||
context, activity, this /* host */, lifecycle);
|
|
||||||
controllers.add(mBatteryHeaderPreferenceController);
|
|
||||||
mBatteryTipPreferenceController = new BatteryTipPreferenceController(context,
|
|
||||||
KEY_BATTERY_TIP, (SettingsActivity) getActivity(), this /* fragment */, this /*
|
|
||||||
BatteryTipListener */);
|
|
||||||
controllers.add(mBatteryTipPreferenceController);
|
|
||||||
controllers.add(new BatteryPercentagePreferenceController(context));
|
|
||||||
return controllers;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||||
if (DEBUG) {
|
if (DEBUG) {
|
||||||
|
@@ -59,24 +59,27 @@ public class BatteryTipPreferenceController extends BasePreferenceController {
|
|||||||
InstrumentedPreferenceFragment mFragment;
|
InstrumentedPreferenceFragment mFragment;
|
||||||
|
|
||||||
public BatteryTipPreferenceController(Context context, String preferenceKey) {
|
public BatteryTipPreferenceController(Context context, String preferenceKey) {
|
||||||
this(context, preferenceKey, null, null, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
public BatteryTipPreferenceController(Context context, String preferenceKey,
|
|
||||||
SettingsActivity settingsActivity, InstrumentedPreferenceFragment fragment,
|
|
||||||
BatteryTipListener batteryTipListener) {
|
|
||||||
super(context, preferenceKey);
|
super(context, preferenceKey);
|
||||||
mBatteryTipListener = batteryTipListener;
|
|
||||||
mBatteryTipMap = new HashMap<>();
|
mBatteryTipMap = new HashMap<>();
|
||||||
mFragment = fragment;
|
|
||||||
mSettingsActivity = settingsActivity;
|
|
||||||
mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider();
|
mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider();
|
||||||
mNeedUpdate = true;
|
mNeedUpdate = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setActivity(SettingsActivity activity) {
|
||||||
|
mSettingsActivity = activity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFragment(InstrumentedPreferenceFragment fragment) {
|
||||||
|
mFragment = fragment;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBatteryTipListener(BatteryTipListener lsn) {
|
||||||
|
mBatteryTipListener = lsn;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE_UNSEARCHABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -1 +0,0 @@
|
|||||||
com.android.settings.fuelgauge.PowerUsageSummary
|
|
||||||
|
@@ -32,13 +32,15 @@ import org.robolectric.RuntimeEnvironment;
|
|||||||
@RunWith(SettingsRobolectricTestRunner.class)
|
@RunWith(SettingsRobolectricTestRunner.class)
|
||||||
public class BatteryPercentagePreferenceControllerTest {
|
public class BatteryPercentagePreferenceControllerTest {
|
||||||
|
|
||||||
|
private static final String PREF_KEY = "battery_percentage";
|
||||||
|
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
private BatteryPercentagePreferenceController mController;
|
private BatteryPercentagePreferenceController mController;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setup() {
|
public void setup() {
|
||||||
mContext = RuntimeEnvironment.application;
|
mContext = RuntimeEnvironment.application;
|
||||||
mController = new BatteryPercentagePreferenceController(mContext);
|
mController = new BatteryPercentagePreferenceController(mContext, PREF_KEY);
|
||||||
}
|
}
|
||||||
|
|
||||||
private int getPercentageSetting() {
|
private int getPercentageSetting() {
|
||||||
|
@@ -36,6 +36,7 @@ import android.widget.TextView;
|
|||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.applications.LayoutPreference;
|
import com.android.settings.applications.LayoutPreference;
|
||||||
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||||
import com.android.settings.testutils.shadow.SettingsShadowResources;
|
import com.android.settings.testutils.shadow.SettingsShadowResources;
|
||||||
import com.android.settings.testutils.shadow.SettingsShadowResourcesImpl;
|
import com.android.settings.testutils.shadow.SettingsShadowResourcesImpl;
|
||||||
@@ -68,6 +69,7 @@ import androidx.recyclerview.widget.RecyclerView;
|
|||||||
})
|
})
|
||||||
public class BatteryHeaderPreferenceControllerTest {
|
public class BatteryHeaderPreferenceControllerTest {
|
||||||
|
|
||||||
|
private static final String PREF_KEY = "battery_header";
|
||||||
private static final int BATTERY_LEVEL = 60;
|
private static final int BATTERY_LEVEL = 60;
|
||||||
private static final String TIME_LEFT = "2h30min";
|
private static final String TIME_LEFT = "2h30min";
|
||||||
private static final String BATTERY_STATUS = "Charging";
|
private static final String BATTERY_STATUS = "Charging";
|
||||||
@@ -121,8 +123,11 @@ public class BatteryHeaderPreferenceControllerTest {
|
|||||||
|
|
||||||
mPowerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE);
|
mPowerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE);
|
||||||
|
|
||||||
mController = new BatteryHeaderPreferenceController(
|
mController = new BatteryHeaderPreferenceController(mContext, PREF_KEY);
|
||||||
mContext, mActivity, mPreferenceFragment, mLifecycle);
|
mLifecycle.addObserver(mController);
|
||||||
|
mController.setActivity(mActivity);
|
||||||
|
mController.setFragment(mPreferenceFragment);
|
||||||
|
mController.setLifecycle(mLifecycle);
|
||||||
mController.mBatteryMeterView = mBatteryMeterView;
|
mController.mBatteryMeterView = mBatteryMeterView;
|
||||||
mController.mBatteryPercentText = mBatteryPercentText;
|
mController.mBatteryPercentText = mBatteryPercentText;
|
||||||
mController.mSummary1 = mSummary;
|
mController.mSummary1 = mSummary;
|
||||||
@@ -207,4 +212,10 @@ public class BatteryHeaderPreferenceControllerTest {
|
|||||||
assertThat(mBatteryMeterView.getPowerSave()).isEqualTo(value);
|
assertThat(mBatteryMeterView.getPowerSave()).isEqualTo(value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getAvailabilityStatus_returnAvailableUnsearchable() {
|
||||||
|
assertThat(mController.getAvailabilityStatus()).isEqualTo(
|
||||||
|
BasePreferenceController.AVAILABLE_UNSEARCHABLE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -222,21 +222,6 @@ public class PowerUsageSummaryTest {
|
|||||||
assertThat(keys).containsAllIn(niks);
|
assertThat(keys).containsAllIn(niks);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void preferenceControllers_getPreferenceKeys_existInPreferenceScreen() {
|
|
||||||
final Context context = RuntimeEnvironment.application;
|
|
||||||
final PowerUsageSummary fragment = new PowerUsageSummary();
|
|
||||||
final List<String> preferenceScreenKeys =
|
|
||||||
XmlTestUtils.getKeysFromPreferenceXml(context, fragment.getPreferenceScreenResId());
|
|
||||||
final List<String> preferenceKeys = new ArrayList<>();
|
|
||||||
|
|
||||||
for (AbstractPreferenceController controller : fragment.createPreferenceControllers(context)) {
|
|
||||||
preferenceKeys.add(controller.getPreferenceKey());
|
|
||||||
}
|
|
||||||
|
|
||||||
assertThat(preferenceScreenKeys).containsAllIn(preferenceKeys);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void restartBatteryTipLoader() {
|
public void restartBatteryTipLoader() {
|
||||||
//TODO: add policy logic here when BatteryTipPolicy is implemented
|
//TODO: add policy logic here when BatteryTipPolicy is implemented
|
||||||
|
@@ -31,6 +31,7 @@ import android.text.format.DateUtils;
|
|||||||
import com.android.internal.logging.nano.MetricsProto;
|
import com.android.internal.logging.nano.MetricsProto;
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.SettingsActivity;
|
import com.android.settings.SettingsActivity;
|
||||||
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.core.InstrumentedPreferenceFragment;
|
import com.android.settings.core.InstrumentedPreferenceFragment;
|
||||||
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
|
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
|
||||||
import com.android.settings.fuelgauge.batterytip.tips.SummaryTip;
|
import com.android.settings.fuelgauge.batterytip.tips.SummaryTip;
|
||||||
@@ -100,8 +101,7 @@ public class BatteryTipPreferenceControllerTest {
|
|||||||
mNewBatteryTips = new ArrayList<>();
|
mNewBatteryTips = new ArrayList<>();
|
||||||
mNewBatteryTips.add(new SummaryTip(BatteryTip.StateType.INVISIBLE, AVERAGE_TIME_MS));
|
mNewBatteryTips.add(new SummaryTip(BatteryTip.StateType.INVISIBLE, AVERAGE_TIME_MS));
|
||||||
|
|
||||||
mBatteryTipPreferenceController = new BatteryTipPreferenceController(mContext, KEY_PREF,
|
mBatteryTipPreferenceController = buildBatteryTipPreferenceController();
|
||||||
mSettingsActivity, mFragment, mBatteryTipListener);
|
|
||||||
mBatteryTipPreferenceController.mPreferenceGroup = mPreferenceGroup;
|
mBatteryTipPreferenceController.mPreferenceGroup = mPreferenceGroup;
|
||||||
mBatteryTipPreferenceController.mPrefContext = mContext;
|
mBatteryTipPreferenceController.mPrefContext = mContext;
|
||||||
}
|
}
|
||||||
@@ -139,8 +139,7 @@ public class BatteryTipPreferenceControllerTest {
|
|||||||
final Bundle bundle = new Bundle();
|
final Bundle bundle = new Bundle();
|
||||||
mBatteryTipPreferenceController.saveInstanceState(bundle);
|
mBatteryTipPreferenceController.saveInstanceState(bundle);
|
||||||
|
|
||||||
final BatteryTipPreferenceController controller = new BatteryTipPreferenceController(
|
final BatteryTipPreferenceController controller = buildBatteryTipPreferenceController();
|
||||||
mContext, KEY_PREF, mSettingsActivity, mFragment, mBatteryTipListener);
|
|
||||||
controller.mPreferenceGroup = mPreferenceGroup;
|
controller.mPreferenceGroup = mPreferenceGroup;
|
||||||
controller.mPrefContext = mContext;
|
controller.mPrefContext = mContext;
|
||||||
controller.restoreInstanceState(bundle);
|
controller.restoreInstanceState(bundle);
|
||||||
@@ -154,8 +153,7 @@ public class BatteryTipPreferenceControllerTest {
|
|||||||
// Battery tip list is null at this time
|
// Battery tip list is null at this time
|
||||||
mBatteryTipPreferenceController.saveInstanceState(bundle);
|
mBatteryTipPreferenceController.saveInstanceState(bundle);
|
||||||
|
|
||||||
final BatteryTipPreferenceController controller = new BatteryTipPreferenceController(
|
final BatteryTipPreferenceController controller = buildBatteryTipPreferenceController();
|
||||||
mContext, KEY_PREF, mSettingsActivity, mFragment, mBatteryTipListener);
|
|
||||||
|
|
||||||
// Should not crash
|
// Should not crash
|
||||||
controller.restoreInstanceState(bundle);
|
controller.restoreInstanceState(bundle);
|
||||||
@@ -176,6 +174,12 @@ public class BatteryTipPreferenceControllerTest {
|
|||||||
verify(mBatteryTipListener).onBatteryTipHandled(mBatteryTip);
|
verify(mBatteryTipListener).onBatteryTipHandled(mBatteryTip);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getAvailabilityStatus_returnAvailableUnsearchable() {
|
||||||
|
assertThat(mBatteryTipPreferenceController.getAvailabilityStatus()).isEqualTo(
|
||||||
|
BasePreferenceController.AVAILABLE_UNSEARCHABLE);
|
||||||
|
}
|
||||||
|
|
||||||
private void assertOnlyContainsSummaryTip(final PreferenceGroup preferenceGroup) {
|
private void assertOnlyContainsSummaryTip(final PreferenceGroup preferenceGroup) {
|
||||||
assertThat(preferenceGroup.getPreferenceCount()).isEqualTo(1);
|
assertThat(preferenceGroup.getPreferenceCount()).isEqualTo(1);
|
||||||
|
|
||||||
@@ -185,4 +189,14 @@ public class BatteryTipPreferenceControllerTest {
|
|||||||
assertThat(preference.getSummary()).isEqualTo(
|
assertThat(preference.getSummary()).isEqualTo(
|
||||||
mContext.getString(R.string.battery_tip_summary_summary));
|
mContext.getString(R.string.battery_tip_summary_summary));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private BatteryTipPreferenceController buildBatteryTipPreferenceController() {
|
||||||
|
final BatteryTipPreferenceController controller = new BatteryTipPreferenceController(
|
||||||
|
mContext, KEY_PREF);
|
||||||
|
controller.setActivity(mSettingsActivity);
|
||||||
|
controller.setFragment(mFragment);
|
||||||
|
controller.setBatteryTipListener(mBatteryTipListener);
|
||||||
|
|
||||||
|
return controller;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user