Loading services/people/java/com/android/server/people/data/UsageStatsQueryHelper.java +3 −0 Original line number Original line Diff line number Diff line Loading @@ -148,6 +148,9 @@ class UsageStatsQueryHelper { UsageStatsManager.INTERVAL_BEST, startTime, endTime, UsageStatsManager.INTERVAL_BEST, startTime, endTime, /* obfuscateInstantApps= */ false); /* obfuscateInstantApps= */ false); Map<String, AppUsageStatsData> aggregatedStats = new ArrayMap<>(); Map<String, AppUsageStatsData> aggregatedStats = new ArrayMap<>(); if (stats == null) { return aggregatedStats; } for (UsageStats stat : stats) { for (UsageStats stat : stats) { String packageName = stat.getPackageName(); String packageName = stat.getPackageName(); if (packageNameFilter.contains(packageName)) { if (packageNameFilter.contains(packageName)) { Loading services/tests/servicestests/src/com/android/server/people/data/UsageStatsQueryHelperTest.java +15 −0 Original line number Original line Diff line number Diff line Loading @@ -18,6 +18,8 @@ package com.android.server.people.data; import static com.android.server.people.data.TestUtils.timestamp; import static com.android.server.people.data.TestUtils.timestamp; import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertTrue; Loading Loading @@ -235,6 +237,19 @@ public final class UsageStatsQueryHelperTest { assertEquals(5, (long) appLaunchChooserCountCounts.get(PKG_NAME_1).getLaunchCount()); assertEquals(5, (long) appLaunchChooserCountCounts.get(PKG_NAME_1).getLaunchCount()); } } @Test public void testQueryAppUsageStats_nullUsageStats() { when(mUsageStatsManagerInternal.queryUsageStatsForUser(anyInt(), anyInt(), anyLong(), anyLong(), anyBoolean())).thenReturn(null); Map<String, AppUsageStatsData> appLaunchChooserCountCounts = mHelper.queryAppUsageStats(USER_ID_PRIMARY, 90_000L, 200_000L, Set.of(PKG_NAME_1)); assertThat(appLaunchChooserCountCounts).isEmpty(); } private void addUsageEvents(UsageEvents.Event... events) { private void addUsageEvents(UsageEvents.Event... events) { UsageEvents usageEvents = new UsageEvents(Arrays.asList(events), new String[]{}); UsageEvents usageEvents = new UsageEvents(Arrays.asList(events), new String[]{}); when(mUsageStatsManagerInternal.queryEventsForUser(anyInt(), anyLong(), anyLong(), when(mUsageStatsManagerInternal.queryEventsForUser(anyInt(), anyLong(), anyLong(), Loading Loading
services/people/java/com/android/server/people/data/UsageStatsQueryHelper.java +3 −0 Original line number Original line Diff line number Diff line Loading @@ -148,6 +148,9 @@ class UsageStatsQueryHelper { UsageStatsManager.INTERVAL_BEST, startTime, endTime, UsageStatsManager.INTERVAL_BEST, startTime, endTime, /* obfuscateInstantApps= */ false); /* obfuscateInstantApps= */ false); Map<String, AppUsageStatsData> aggregatedStats = new ArrayMap<>(); Map<String, AppUsageStatsData> aggregatedStats = new ArrayMap<>(); if (stats == null) { return aggregatedStats; } for (UsageStats stat : stats) { for (UsageStats stat : stats) { String packageName = stat.getPackageName(); String packageName = stat.getPackageName(); if (packageNameFilter.contains(packageName)) { if (packageNameFilter.contains(packageName)) { Loading
services/tests/servicestests/src/com/android/server/people/data/UsageStatsQueryHelperTest.java +15 −0 Original line number Original line Diff line number Diff line Loading @@ -18,6 +18,8 @@ package com.android.server.people.data; import static com.android.server.people.data.TestUtils.timestamp; import static com.android.server.people.data.TestUtils.timestamp; import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertTrue; Loading Loading @@ -235,6 +237,19 @@ public final class UsageStatsQueryHelperTest { assertEquals(5, (long) appLaunchChooserCountCounts.get(PKG_NAME_1).getLaunchCount()); assertEquals(5, (long) appLaunchChooserCountCounts.get(PKG_NAME_1).getLaunchCount()); } } @Test public void testQueryAppUsageStats_nullUsageStats() { when(mUsageStatsManagerInternal.queryUsageStatsForUser(anyInt(), anyInt(), anyLong(), anyLong(), anyBoolean())).thenReturn(null); Map<String, AppUsageStatsData> appLaunchChooserCountCounts = mHelper.queryAppUsageStats(USER_ID_PRIMARY, 90_000L, 200_000L, Set.of(PKG_NAME_1)); assertThat(appLaunchChooserCountCounts).isEmpty(); } private void addUsageEvents(UsageEvents.Event... events) { private void addUsageEvents(UsageEvents.Event... events) { UsageEvents usageEvents = new UsageEvents(Arrays.asList(events), new String[]{}); UsageEvents usageEvents = new UsageEvents(Arrays.asList(events), new String[]{}); when(mUsageStatsManagerInternal.queryEventsForUser(anyInt(), anyLong(), anyLong(), when(mUsageStatsManagerInternal.queryEventsForUser(anyInt(), anyLong(), anyLong(), Loading