Merge "Fill Status data in ConversationChannel" into sc-dev

This commit is contained in:
Anna Zappone
2021-02-01 19:41:03 +00:00
committed by Android (Google) Code Review
2 changed files with 16 additions and 4 deletions

View File

@@ -264,7 +264,8 @@ public class DataManager {
return new ConversationChannel(shortcutInfo, uid, parentChannel, return new ConversationChannel(shortcutInfo, uid, parentChannel,
parentChannelGroup, parentChannelGroup,
conversationInfo.getLastEventTimestamp(), conversationInfo.getLastEventTimestamp(),
hasActiveNotifications(packageName, userId, shortcutId)); hasActiveNotifications(packageName, userId, shortcutId), false,
getStatuses(conversationInfo));
} }
/** Returns the cached non-customized recent conversations. */ /** Returns the cached non-customized recent conversations. */
@@ -404,6 +405,10 @@ public class DataManager {
String conversationId) { String conversationId) {
ConversationStore cs = getConversationStoreOrThrow(packageName, userId); ConversationStore cs = getConversationStoreOrThrow(packageName, userId);
ConversationInfo conversationInfo = getConversationInfoOrThrow(cs, conversationId); ConversationInfo conversationInfo = getConversationInfoOrThrow(cs, conversationId);
return getStatuses(conversationInfo);
}
private @NonNull List<ConversationStatus> getStatuses(ConversationInfo conversationInfo) {
Collection<ConversationStatus> statuses = conversationInfo.getStatuses(); Collection<ConversationStatus> statuses = conversationInfo.getStatuses();
if (statuses != null) { if (statuses != null) {
final ArrayList<ConversationStatus> list = new ArrayList<>(statuses.size()); final ArrayList<ConversationStatus> list = new ArrayList<>(statuses.size());

View File

@@ -535,8 +535,11 @@ public final class DataManagerTest {
listenerService.onNotificationChannelModified(TEST_PKG_NAME, UserHandle.of(USER_ID_PRIMARY), listenerService.onNotificationChannelModified(TEST_PKG_NAME, UserHandle.of(USER_ID_PRIMARY),
mNotificationChannel, NOTIFICATION_CHANNEL_OR_GROUP_UPDATED); mNotificationChannel, NOTIFICATION_CHANNEL_OR_GROUP_UPDATED);
assertThat(mDataManager.getConversation(TEST_PKG_NAME, USER_ID_PRIMARY, ConversationChannel result = mDataManager.getConversation(TEST_PKG_NAME, USER_ID_PRIMARY,
TEST_SHORTCUT_ID)).isNotNull(); TEST_SHORTCUT_ID);
assertThat(result).isNotNull();
assertThat(result.hasBirthdayToday()).isFalse();
assertThat(result.getStatuses()).isEmpty();
} }
@Test @Test
@@ -557,6 +560,8 @@ public final class DataManagerTest {
NotificationListenerService listenerService = NotificationListenerService listenerService =
mDataManager.getNotificationListenerServiceForTesting(USER_ID_PRIMARY); mDataManager.getNotificationListenerServiceForTesting(USER_ID_PRIMARY);
listenerService.onNotificationPosted(mStatusBarNotification); listenerService.onNotificationPosted(mStatusBarNotification);
ConversationStatus cs = new ConversationStatus.Builder("id", ACTIVITY_ANNIVERSARY).build();
mDataManager.addOrUpdateStatus(TEST_PKG_NAME, USER_ID_PRIMARY, TEST_SHORTCUT_ID, cs);
ConversationChannel result = mDataManager.getConversation(TEST_PKG_NAME, USER_ID_PRIMARY, ConversationChannel result = mDataManager.getConversation(TEST_PKG_NAME, USER_ID_PRIMARY,
TEST_SHORTCUT_ID); TEST_SHORTCUT_ID);
@@ -568,6 +573,8 @@ public final class DataManagerTest {
result.getParentNotificationChannel().getId()); result.getParentNotificationChannel().getId());
assertEquals(mStatusBarNotification.getPostTime(), result.getLastEventTimestamp()); assertEquals(mStatusBarNotification.getPostTime(), result.getLastEventTimestamp());
assertTrue(result.hasActiveNotifications()); assertTrue(result.hasActiveNotifications());
assertFalse(result.hasBirthdayToday());
assertThat(result.getStatuses()).containsExactly(cs);
} }
@Test @Test