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

Commit 3a52e335 authored by Wesley.CW Wang's avatar Wesley.CW Wang Committed by Wesley Wang
Browse files

Remove Battery Settings page default tips

 - Remove SummaryTips from default tips
 - Clean up test file import
 Screenshot: https://screenshot.googleplex.com/6rYrnMvoTbeCS7m.png

Bug: 183079415
Test: make RunSettingsRoboTests -j40
Change-Id: I1001d75235a6d8d5947b974939884103eb0834da
parent f732a95f
Loading
Loading
Loading
Loading
+0 −2
Original line number Original line Diff line number Diff line
@@ -28,7 +28,6 @@ import com.android.settings.fuelgauge.batterytip.detectors.EarlyWarningDetector;
import com.android.settings.fuelgauge.batterytip.detectors.HighUsageDetector;
import com.android.settings.fuelgauge.batterytip.detectors.HighUsageDetector;
import com.android.settings.fuelgauge.batterytip.detectors.LowBatteryDetector;
import com.android.settings.fuelgauge.batterytip.detectors.LowBatteryDetector;
import com.android.settings.fuelgauge.batterytip.detectors.SmartBatteryDetector;
import com.android.settings.fuelgauge.batterytip.detectors.SmartBatteryDetector;
import com.android.settings.fuelgauge.batterytip.detectors.SummaryDetector;
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.LowBatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.LowBatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.SummaryTip;
import com.android.settings.fuelgauge.batterytip.tips.SummaryTip;
@@ -73,7 +72,6 @@ public class BatteryTipLoader extends AsyncLoaderCompat<List<BatteryTip>> {
        tips.add(new SmartBatteryDetector(policy, context.getContentResolver()).detect());
        tips.add(new SmartBatteryDetector(policy, context.getContentResolver()).detect());
        tips.add(new EarlyWarningDetector(policy, context).detect());
        tips.add(new EarlyWarningDetector(policy, context).detect());
        tips.add(new BatteryDefenderDetector(batteryInfo).detect());
        tips.add(new BatteryDefenderDetector(batteryInfo).detect());
        tips.add(new SummaryDetector(policy, batteryInfo.averageTimeToDischarge).detect());
        // Disable this feature now since it introduces false positive cases. We will try to improve
        // Disable this feature now since it introduces false positive cases. We will try to improve
        // it in the future.
        // it in the future.
        // tips.add(new RestrictAppDetector(context, policy).detect());
        // tips.add(new RestrictAppDetector(context, policy).detect());
+1 −1
Original line number Original line Diff line number Diff line
@@ -230,7 +230,7 @@ public class BatteryTipPolicy {
        }
        }


        batteryTipEnabled = mParser.getBoolean(KEY_BATTERY_TIP_ENABLED, true);
        batteryTipEnabled = mParser.getBoolean(KEY_BATTERY_TIP_ENABLED, true);
        summaryEnabled = mParser.getBoolean(KEY_SUMMARY_ENABLED, true);
        summaryEnabled = mParser.getBoolean(KEY_SUMMARY_ENABLED, false);
        batterySaverTipEnabled = mParser.getBoolean(KEY_BATTERY_SAVER_TIP_ENABLED, true);
        batterySaverTipEnabled = mParser.getBoolean(KEY_BATTERY_SAVER_TIP_ENABLED, true);
        highUsageEnabled = mParser.getBoolean(KEY_HIGH_USAGE_ENABLED, true);
        highUsageEnabled = mParser.getBoolean(KEY_HIGH_USAGE_ENABLED, true);
        highUsageAppCount = mParser.getInt(KEY_HIGH_USAGE_APP_COUNT, 3);
        highUsageAppCount = mParser.getInt(KEY_HIGH_USAGE_APP_COUNT, 3);
+4 −6
Original line number Original line Diff line number Diff line
@@ -28,11 +28,9 @@ import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.InstrumentedPreferenceFragment;
import com.android.settings.core.InstrumentedPreferenceFragment;
import com.android.settings.fuelgauge.batterytip.actions.BatteryTipAction;
import com.android.settings.fuelgauge.batterytip.actions.BatteryTipAction;
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.overlay.FeatureFactory;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.CardPreference;
import com.android.settings.widget.CardPreference;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.fuelgauge.EstimateKt;


import java.util.HashMap;
import java.util.HashMap;
import java.util.List;
import java.util.List;
@@ -91,10 +89,8 @@ public class BatteryTipPreferenceController extends BasePreferenceController {
        mPrefContext = screen.getContext();
        mPrefContext = screen.getContext();
        mCardPreference = screen.findPreference(getPreferenceKey());
        mCardPreference = screen.findPreference(getPreferenceKey());


        // Add summary tip in advance to avoid UI flakiness
        // Set preference as invisible since there is no default tips.
        final SummaryTip summaryTip = new SummaryTip(BatteryTip.StateType.NEW,
        mCardPreference.setVisible(false);
                EstimateKt.AVERAGE_TIME_TO_DISCHARGE_UNKNOWN);
        summaryTip.updatePreference(mCardPreference);
    }
    }


    public void updateBatteryTips(List<BatteryTip> batteryTips) {
    public void updateBatteryTips(List<BatteryTip> batteryTips) {
@@ -110,10 +106,12 @@ public class BatteryTipPreferenceController extends BasePreferenceController {
            }
            }
        }
        }


        mCardPreference.setVisible(false);
        for (int i = 0, size = batteryTips.size(); i < size; i++) {
        for (int i = 0, size = batteryTips.size(); i < size; i++) {
            final BatteryTip batteryTip = mBatteryTips.get(i);
            final BatteryTip batteryTip = mBatteryTips.get(i);
            batteryTip.validateCheck(mContext);
            batteryTip.validateCheck(mContext);
            if (batteryTip.getState() != BatteryTip.StateType.INVISIBLE) {
            if (batteryTip.getState() != BatteryTip.StateType.INVISIBLE) {
                mCardPreference.setVisible(true);
                batteryTip.updatePreference(mCardPreference);
                batteryTip.updatePreference(mCardPreference);
                mBatteryTipMap.put(mCardPreference.getKey(), batteryTip);
                mBatteryTipMap.put(mCardPreference.getKey(), batteryTip);
                batteryTip.log(mContext, mMetricsFeatureProvider);
                batteryTip.log(mContext, mMetricsFeatureProvider);
+0 −1
Original line number Original line Diff line number Diff line
@@ -54,7 +54,6 @@ public class BatteryTipLoaderTest {
            BatteryTip.TipType.BATTERY_SAVER,
            BatteryTip.TipType.BATTERY_SAVER,
            BatteryTip.TipType.HIGH_DEVICE_USAGE,
            BatteryTip.TipType.HIGH_DEVICE_USAGE,
            BatteryTip.TipType.LOW_BATTERY,
            BatteryTip.TipType.LOW_BATTERY,
            BatteryTip.TipType.SUMMARY,
            BatteryTip.TipType.SMART_BATTERY_MANAGER};
            BatteryTip.TipType.SMART_BATTERY_MANAGER};
    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
    private BatteryUsageStats mBatteryUsageStats;
    private BatteryUsageStats mBatteryUsageStats;
+16 −8
Original line number Original line Diff line number Diff line
@@ -20,7 +20,6 @@ import static com.android.settings.fuelgauge.batterytip.tips.BatteryTip.TipType


import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth.assertThat;


import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verify;
@@ -30,10 +29,6 @@ import android.content.Context;
import android.os.Bundle;
import android.os.Bundle;
import android.text.format.DateUtils;
import android.text.format.DateUtils;


import androidx.preference.Preference;
import androidx.preference.PreferenceCategory;
import androidx.preference.PreferenceGroup;
import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
import androidx.preference.PreferenceScreen;


import com.android.internal.logging.nano.MetricsProto;
import com.android.internal.logging.nano.MetricsProto;
@@ -49,7 +44,6 @@ import com.android.settings.widget.CardPreference;
import org.junit.Before;
import org.junit.Before;
import org.junit.Test;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runner.RunWith;
import org.mockito.Answers;
import org.mockito.Mock;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.mockito.MockitoAnnotations;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RobolectricTestRunner;
@@ -104,10 +98,24 @@ public class BatteryTipPreferenceControllerTest {
    }
    }


    @Test
    @Test
    public void testDisplayPreference_addSummaryTip() {
    public void testDisplayPreference_isInvisible() {
        mBatteryTipPreferenceController.displayPreference(mPreferenceScreen);
        mBatteryTipPreferenceController.displayPreference(mPreferenceScreen);


        assertOnlyContainsSummaryTip(mCardPreference);
        assertThat(mCardPreference.isVisible()).isFalse();
    }

    @Test
    public void testUpdateBatteryTips_tipsStateNew_isVisible() {
        mBatteryTipPreferenceController.updateBatteryTips(mOldBatteryTips);

        assertThat(mCardPreference.isVisible()).isTrue();
    }

    @Test
    public void testUpdateBatteryTips_tipsStateInvisible_isInvisible() {
        mBatteryTipPreferenceController.updateBatteryTips(mNewBatteryTips);

        assertThat(mCardPreference.isVisible()).isFalse();
    }
    }


    @Test
    @Test
Loading