diff options
author | Trung Lam <lamtrung@google.com> | 2020-03-02 19:31:43 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-03-02 19:31:43 +0000 |
commit | a23db05da577e941ec964eaad6b09f901d34a629 (patch) | |
tree | 6af5ae8a30d1707e9d7f8023065d7884d34e43ca | |
parent | 4894b560a53326a50054bcb41097c84c26a17a10 (diff) | |
parent | 2dcfcc1dee71f2e9808f40cf90e91712ebf44501 (diff) |
Merge "Fix unit tests for people service." into rvc-dev
4 files changed, 26 insertions, 14 deletions
diff --git a/services/people/java/com/android/server/people/data/AggregateEventHistoryImpl.java b/services/people/java/com/android/server/people/data/AggregateEventHistoryImpl.java index 4ac346b51b22..6abf6d256caf 100644 --- a/services/people/java/com/android/server/people/data/AggregateEventHistoryImpl.java +++ b/services/people/java/com/android/server/people/data/AggregateEventHistoryImpl.java @@ -42,14 +42,16 @@ class AggregateEventHistoryImpl implements EventHistory { @NonNull @Override public EventIndex getEventIndex(Set<Integer> eventTypes) { - EventIndex merged = new EventIndex(); + EventIndex merged = null; for (EventHistory eventHistory : mEventHistoryList) { EventIndex eventIndex = eventHistory.getEventIndex(eventTypes); - if (!eventIndex.isEmpty()) { + if (merged == null) { + merged = eventIndex; + } else if (!eventIndex.isEmpty()) { merged = EventIndex.combine(merged, eventIndex); } } - return merged; + return merged != null ? merged : EventIndex.EMPTY; } @NonNull diff --git a/services/people/java/com/android/server/people/data/ConversationStore.java b/services/people/java/com/android/server/people/data/ConversationStore.java index 2f2a95cb0a6c..8481e5b916a6 100644 --- a/services/people/java/com/android/server/people/data/ConversationStore.java +++ b/services/people/java/com/android/server/people/data/ConversationStore.java @@ -198,7 +198,10 @@ class ConversationStore { mLocusIdToShortcutIdMap.clear(); mNotifChannelIdToShortcutIdMap.clear(); mPhoneNumberToShortcutIdMap.clear(); - mConversationInfosProtoDiskReadWriter.deleteConversationsFile(); + ConversationInfosProtoDiskReadWriter writer = getConversationInfosProtoDiskReadWriter(); + if (writer != null) { + writer.deleteConversationsFile(); + } } @Nullable diff --git a/services/people/java/com/android/server/people/data/EventIndex.java b/services/people/java/com/android/server/people/data/EventIndex.java index 47b620773180..6a13b0e6dd6e 100644 --- a/services/people/java/com/android/server/people/data/EventIndex.java +++ b/services/people/java/com/android/server/people/data/EventIndex.java @@ -129,8 +129,7 @@ public class EventIndex { } EventIndex(@NonNull EventIndex from) { - this(from.mInjector, Arrays.copyOf(from.mEventBitmaps, TIME_SLOT_TYPES_COUNT), - from.mLastUpdatedTime); + this(from.mInjector, from.mEventBitmaps, from.mLastUpdatedTime); } @VisibleForTesting @@ -140,7 +139,7 @@ public class EventIndex { private EventIndex(@NonNull Injector injector, long[] eventBitmaps, long lastUpdatedTime) { mInjector = injector; - mEventBitmaps = eventBitmaps; + mEventBitmaps = Arrays.copyOf(eventBitmaps, TIME_SLOT_TYPES_COUNT); mLastUpdatedTime = lastUpdatedTime; } diff --git a/services/tests/servicestests/src/com/android/server/people/data/DataManagerTest.java b/services/tests/servicestests/src/com/android/server/people/data/DataManagerTest.java index e57df24d67cb..624b67ccda85 100644 --- a/services/tests/servicestests/src/com/android/server/people/data/DataManagerTest.java +++ b/services/tests/servicestests/src/com/android/server/people/data/DataManagerTest.java @@ -335,9 +335,9 @@ public final class DataManagerTest { throws IntentFilter.MalformedMimeTypeException { mDataManager.onUserUnlocked(USER_ID_PRIMARY); AppTarget appTarget = new AppTarget.Builder( - new AppTargetId(TEST_SHORTCUT_ID), - TEST_PKG_NAME, - UserHandle.of(USER_ID_PRIMARY)) + new AppTargetId(TEST_SHORTCUT_ID), + TEST_PKG_NAME, + UserHandle.of(USER_ID_PRIMARY)) .setClassName(TEST_CLASS_NAME) .build(); AppTargetEvent appTargetEvent = @@ -347,8 +347,7 @@ public final class DataManagerTest { mDataManager.reportShareTargetEvent(appTargetEvent, intentFilter); - List<Range<Long>> activeShareTimeSlots = getActiveSlotsForTestShortcut( - Event.SHARE_EVENT_TYPES); + List<Range<Long>> activeShareTimeSlots = getActiveSlotsForAppShares(); assertEquals(1, activeShareTimeSlots.size()); } @@ -692,8 +691,7 @@ public final class DataManagerTest { return conversations; } - private List<Range<Long>> getActiveSlotsForTestShortcut( - Set<Integer> eventTypes) { + private List<Range<Long>> getActiveSlotsForTestShortcut(Set<Integer> eventTypes) { List<Range<Long>> activeSlots = new ArrayList<>(); mDataManager.forPackagesInProfile(USER_ID_PRIMARY, packageData -> activeSlots.addAll( @@ -703,6 +701,16 @@ public final class DataManagerTest { return activeSlots; } + private List<Range<Long>> getActiveSlotsForAppShares() { + List<Range<Long>> activeSlots = new ArrayList<>(); + mDataManager.forPackagesInProfile(USER_ID_PRIMARY, packageData -> + activeSlots.addAll( + packageData.getClassLevelEventHistory(TEST_CLASS_NAME) + .getEventIndex(Event.SHARE_EVENT_TYPES) + .getActiveTimeSlots())); + return activeSlots; + } + private ShortcutInfo buildShortcutInfo(String packageName, int userId, String id, @Nullable Person person) { Context mockContext = mock(Context.class); |