diff options
author | Song Hu <songhu@google.com> | 2020-06-01 18:05:09 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-06-01 18:05:09 +0000 |
commit | 005ce7cae6c6f2fe97858eecd39092f16a92765b (patch) | |
tree | da019d14e90965ee52e35a5459b7ef6b8f07e351 | |
parent | 83e9ba45a4f874ecd81aeda3a4ff7964b1eba3ba (diff) | |
parent | 0c1b59a83a28f2e5b0f61161f37698839c0e9a46 (diff) |
Merge "Return empty map when queryUsageStatsForUser returns null in UsageStatsQueryHelper#queryAppUsageStats." into rvc-dev
-rw-r--r-- | services/people/java/com/android/server/people/data/UsageStatsQueryHelper.java | 3 | ||||
-rw-r--r-- | services/tests/servicestests/src/com/android/server/people/data/UsageStatsQueryHelperTest.java | 15 |
2 files changed, 18 insertions, 0 deletions
diff --git a/services/people/java/com/android/server/people/data/UsageStatsQueryHelper.java b/services/people/java/com/android/server/people/data/UsageStatsQueryHelper.java index d89bbe9dd14e..d008b72c6bad 100644 --- a/services/people/java/com/android/server/people/data/UsageStatsQueryHelper.java +++ b/services/people/java/com/android/server/people/data/UsageStatsQueryHelper.java @@ -148,6 +148,9 @@ class UsageStatsQueryHelper { UsageStatsManager.INTERVAL_BEST, startTime, endTime, /* obfuscateInstantApps= */ false); Map<String, AppUsageStatsData> aggregatedStats = new ArrayMap<>(); + if (stats == null) { + return aggregatedStats; + } for (UsageStats stat : stats) { String packageName = stat.getPackageName(); if (packageNameFilter.contains(packageName)) { diff --git a/services/tests/servicestests/src/com/android/server/people/data/UsageStatsQueryHelperTest.java b/services/tests/servicestests/src/com/android/server/people/data/UsageStatsQueryHelperTest.java index 30ff1196cec0..e9686071409e 100644 --- a/services/tests/servicestests/src/com/android/server/people/data/UsageStatsQueryHelperTest.java +++ b/services/tests/servicestests/src/com/android/server/people/data/UsageStatsQueryHelperTest.java @@ -18,6 +18,8 @@ package com.android.server.people.data; 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.assertFalse; import static org.junit.Assert.assertTrue; @@ -235,6 +237,19 @@ public final class UsageStatsQueryHelperTest { 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) { UsageEvents usageEvents = new UsageEvents(Arrays.asList(events), new String[]{}); when(mUsageStatsManagerInternal.queryEventsForUser(anyInt(), anyLong(), anyLong(), |