From 44dc63ec7bb1ebc4ac3df212951ba0b8a51de5ad Mon Sep 17 00:00:00 2001 From: jackqdyulei Date: Fri, 11 Aug 2017 13:00:04 -0700 Subject: [PATCH] Add userId to key when type is USER Before this cl, the app list couldn't distinguish different users because all of them have the same key: USER. This cl adds userId into key, to make sure the preference key is unique. Bug: 64605854 Test: RunSettingsRoboTests Change-Id: Ia4de2ff85b214465a35f1983ca69a9280d053154 --- .../android/settings/fuelgauge/PowerUsageSummary.java | 2 ++ .../settings/fuelgauge/PowerUsageSummaryTest.java | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java index ee6ebb20d4d..3d44c40708a 100644 --- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java +++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java @@ -724,6 +724,8 @@ public class PowerUsageSummary extends PowerUsageBase implements String extractKeyFromSipper(BatterySipper sipper) { if (sipper.uidObj != null) { return extractKeyFromUid(sipper.getUid()); + } else if (sipper.drainType == DrainType.USER) { + return sipper.drainType.toString() + sipper.userId; } else if (sipper.drainType != DrainType.APP) { return sipper.drainType.toString(); } else if (sipper.getPackages() != null) { diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java index 48a48b1abce..db4fb6daa82 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java @@ -313,6 +313,16 @@ public class PowerUsageSummaryTest { assertThat(key).isEqualTo(mNormalBatterySipper.drainType.toString()); } + @Test + public void testExtractKeyFromSipper_typeUser_returnDrainTypeWithUserId() { + mNormalBatterySipper.uidObj = null; + mNormalBatterySipper.drainType = BatterySipper.DrainType.USER; + mNormalBatterySipper.userId = 2; + + final String key = mFragment.extractKeyFromSipper(mNormalBatterySipper); + assertThat(key).isEqualTo("USER2"); + } + @Test public void testExtractKeyFromSipper_typeAPPUidObjectNotNull_returnUid() { mNormalBatterySipper.uidObj = new BatteryStatsImpl.Uid(new BatteryStatsImpl(), UID);