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

Commit abde1705 authored by Lei Yu's avatar Lei Yu Committed by Android (Google) Code Review
Browse files

Merge "Remove misc data in battery main page." into oc-dev

parents f023f507 ab5ca9f5
Loading
Loading
Loading
Loading
+22 −2
Original line number Diff line number Diff line
@@ -66,7 +66,8 @@ public class PowerUsageAdvanced extends PowerUsageBase {
            UsageType.USER,
            UsageType.IDLE,
            UsageType.APP,
            UsageType.UNACCOUNTED};
            UsageType.UNACCOUNTED,
            UsageType.OVERCOUNTED};
    private BatteryHistoryPreference mHistPref;
    private PreferenceGroup mUsageListGroup;
    private PowerUsageFeatureProvider mPowerUsageFeatureProvider;
@@ -169,6 +170,9 @@ public class PowerUsageAdvanced extends PowerUsageBase {
        mUsageListGroup.removeAll();
        for (int i = 0, size = dataList.size(); i < size; i++) {
            final PowerUsageData batteryData = dataList.get(i);
            if (shouldHide(batteryData)) {
                continue;
            }
            final PowerGaugePreference pref = new PowerGaugePreference(getPrefContext());

            pref.setKey(String.valueOf(batteryData.usageType));
@@ -199,6 +203,8 @@ public class PowerUsageAdvanced extends PowerUsageBase {
            return UsageType.CELL;
        } else if (drainType == DrainType.UNACCOUNTED) {
            return UsageType.UNACCOUNTED;
        } else if (drainType == DrainType.OVERCOUNTED) {
            return UsageType.OVERCOUNTED;
        } else if (mPowerUsageFeatureProvider.isTypeSystem(sipper)) {
            return UsageType.SYSTEM;
        } else if (mPowerUsageFeatureProvider.isTypeService(sipper)) {
@@ -208,6 +214,16 @@ public class PowerUsageAdvanced extends PowerUsageBase {
        }
    }

    @VisibleForTesting
    boolean shouldHide(PowerUsageData powerUsageData) {
        if (powerUsageData.usageType == UsageType.UNACCOUNTED
                || powerUsageData.usageType == UsageType.OVERCOUNTED) {
            return true;
        }

        return false;
    }

    @VisibleForTesting
    List<PowerUsageData> parsePowerUsageData(BatteryStatsHelper statusHelper) {
        final List<BatterySipper> batterySippers = statusHelper.getUsageList();
@@ -297,7 +313,8 @@ public class PowerUsageAdvanced extends PowerUsageBase {
                UsageType.BLUETOOTH,
                UsageType.USER,
                UsageType.IDLE,
                UsageType.UNACCOUNTED})
                UsageType.UNACCOUNTED,
                UsageType.OVERCOUNTED})
        public @interface UsageType {
            int APP = 0;
            int WIFI = 1;
@@ -308,6 +325,7 @@ public class PowerUsageAdvanced extends PowerUsageBase {
            int USER = 6;
            int IDLE = 7;
            int UNACCOUNTED = 8;
            int OVERCOUNTED = 9;
        }

        @StringRes
@@ -353,6 +371,8 @@ public class PowerUsageAdvanced extends PowerUsageBase {
                    return R.string.power_idle;
                case UsageType.UNACCOUNTED:
                    return R.string.power_unaccounted;
                case UsageType.OVERCOUNTED:
                    return R.string.power_overcounted;
                case UsageType.APP:
                default:
                    return R.string.power_apps;
+7 −1
Original line number Diff line number Diff line
@@ -599,6 +599,8 @@ public class PowerUsageSummary extends PowerUsageBase {
                || drainType == DrainType.WIFI
                || drainType == DrainType.SCREEN
                || drainType == DrainType.BLUETOOTH
                || drainType == DrainType.UNACCOUNTED
                || drainType == DrainType.OVERCOUNTED
                || (sipper.totalPowerMah * SECONDS_IN_HOUR) < MIN_POWER_THRESHOLD_MILLI_AMP
                || mPowerFeatureProvider.isTypeService(sipper)
                || mPowerFeatureProvider.isTypeSystem(sipper);
@@ -625,9 +627,13 @@ public class PowerUsageSummary extends PowerUsageBase {
            final BatterySipper sipper = sippers.get(i);
            if (shouldHideSipper(sipper)) {
                sippers.remove(i);
                if (sipper.drainType != DrainType.OVERCOUNTED
                        && sipper.drainType != DrainType.UNACCOUNTED) {
                    // Don't add it if it is overcounted or unaccounted
                    totalPowerMah += sipper.totalPowerMah;
                }
            }
        }

        return totalPowerMah;
    }
+24 −1
Original line number Diff line number Diff line
@@ -207,7 +207,7 @@ public class PowerUsageAdvancedTest {

        assertThat(usageTypeSet).asList().containsExactly(UsageType.APP, UsageType.WIFI,
                UsageType.CELL, UsageType.BLUETOOTH, UsageType.IDLE, UsageType.SERVICE,
                UsageType.USER, UsageType.SYSTEM, UsageType.UNACCOUNTED);
                UsageType.USER, UsageType.SYSTEM, UsageType.UNACCOUNTED, UsageType.OVERCOUNTED);
    }

    @Test
@@ -223,4 +223,27 @@ public class PowerUsageAdvancedTest {
            assertThat(dataList.get(i - 1).totalPowerMah).isAtLeast(dataList.get(i).totalPowerMah);
        }
    }

    @Test
    public void testShouldHide_typeUnAccounted_returnTrue() {
        mPowerUsageData.usageType = UsageType.UNACCOUNTED;

        assertThat(mPowerUsageAdvanced.shouldHide(mPowerUsageData)).isTrue();
    }


    @Test
    public void testShouldHide_typeOverCounted_returnTrue() {
        mPowerUsageData.usageType = UsageType.OVERCOUNTED;

        assertThat(mPowerUsageAdvanced.shouldHide(mPowerUsageData)).isTrue();
    }


    @Test
    public void testShouldHide_typeNormal_returnFalse() {
        mPowerUsageData.usageType = UsageType.APP;

        assertThat(mPowerUsageAdvanced.shouldHide(mPowerUsageData)).isFalse();
    }
}
+19 −0
Original line number Diff line number Diff line
@@ -90,6 +90,7 @@ public class PowerUsageSummaryTest {
    private static final double TOTAL_POWER = 200;
    private static final double BATTERY_SCREEN_USAGE = 300;
    private static final double BATTERY_SYSTEM_USAGE = 600;
    private static final double BATTERY_OVERCOUNTED_USAGE = 500;
    private static final double PRECISION = 0.001;
    private static final double POWER_USAGE_PERCENTAGE = 50;
    private static final Intent ADDITIONAL_BATTERY_INFO_INTENT =
@@ -112,6 +113,8 @@ public class PowerUsageSummaryTest {
    @Mock
    private BatterySipper mScreenBatterySipper;
    @Mock
    private BatterySipper mOvercountedBatterySipper;
    @Mock
    private BatterySipper mSystemBatterySipper;
    @Mock
    private BatterySipper mCellBatterySipper;
@@ -188,6 +191,9 @@ public class PowerUsageSummaryTest {
        mSystemBatterySipper.totalPowerMah = BATTERY_SYSTEM_USAGE;
        when(mSystemBatterySipper.getUid()).thenReturn(Process.SYSTEM_UID);

        mOvercountedBatterySipper.drainType = BatterySipper.DrainType.OVERCOUNTED;
        mOvercountedBatterySipper.totalPowerMah = BATTERY_OVERCOUNTED_USAGE;

        mUsageList = new ArrayList<>();
        mUsageList.add(mNormalBatterySipper);
        mUsageList.add(mScreenBatterySipper);
@@ -303,6 +309,7 @@ public class PowerUsageSummaryTest {
        sippers.add(mNormalBatterySipper);
        sippers.add(mScreenBatterySipper);
        sippers.add(mSystemBatterySipper);
        sippers.add(mOvercountedBatterySipper);
        when(mFeatureFactory.powerUsageFeatureProvider.isTypeSystem(mSystemBatterySipper))
                .thenReturn(true);

@@ -317,6 +324,18 @@ public class PowerUsageSummaryTest {
        assertThat(mFragment.shouldHideSipper(mNormalBatterySipper)).isTrue();
    }

    @Test
    public void testShouldHideSipper_TypeUnAccounted_ReturnTrue() {
        mNormalBatterySipper.drainType = BatterySipper.DrainType.UNACCOUNTED;
        assertThat(mFragment.shouldHideSipper(mNormalBatterySipper)).isTrue();
    }

    @Test
    public void testShouldHideSipper_TypeOverCounted_ReturnTrue() {
        mNormalBatterySipper.drainType = BatterySipper.DrainType.OVERCOUNTED;
        assertThat(mFragment.shouldHideSipper(mNormalBatterySipper)).isTrue();
    }

    @Test
    public void testShouldHideSipper_typeWifi_returnTrue() {
        mNormalBatterySipper.drainType = BatterySipper.DrainType.WIFI;