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

Commit 005ce7ca authored by Song Hu's avatar Song Hu Committed by Android (Google) Code Review
Browse files

Merge "Return empty map when queryUsageStatsForUser returns null in...

Merge "Return empty map when queryUsageStatsForUser returns null in UsageStatsQueryHelper#queryAppUsageStats." into rvc-dev
parents 83e9ba45 0c1b59a8
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -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)) {
+15 −0
Original line number Diff line number Diff line
@@ -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(),