summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTrung Lam <lamtrung@google.com>2020-03-02 19:31:43 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-03-02 19:31:43 +0000
commita23db05da577e941ec964eaad6b09f901d34a629 (patch)
tree6af5ae8a30d1707e9d7f8023065d7884d34e43ca
parent4894b560a53326a50054bcb41097c84c26a17a10 (diff)
parent2dcfcc1dee71f2e9808f40cf90e91712ebf44501 (diff)
Merge "Fix unit tests for people service." into rvc-dev
-rw-r--r--services/people/java/com/android/server/people/data/AggregateEventHistoryImpl.java8
-rw-r--r--services/people/java/com/android/server/people/data/ConversationStore.java5
-rw-r--r--services/people/java/com/android/server/people/data/EventIndex.java5
-rw-r--r--services/tests/servicestests/src/com/android/server/people/data/DataManagerTest.java22
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);