Merge "[Ongoing Call] Remove the call chip when #onEntryCleanUp is called." into sc-v2-dev

This commit is contained in:
TreeHugger Robot
2021-09-27 19:21:50 +00:00
committed by Android (Google) Code Review
2 changed files with 21 additions and 0 deletions

View File

@@ -103,7 +103,16 @@ class OngoingCallController @Inject constructor(
} }
} }
// Fix for b/199600334
override fun onEntryCleanUp(entry: NotificationEntry) {
removeChipIfNeeded(entry)
}
override fun onEntryRemoved(entry: NotificationEntry, reason: Int) { override fun onEntryRemoved(entry: NotificationEntry, reason: Int) {
removeChipIfNeeded(entry)
}
private fun removeChipIfNeeded(entry: NotificationEntry) {
if (entry.sbn.key == callNotificationInfo?.key) { if (entry.sbn.key == callNotificationInfo?.key) {
removeChip() removeChip()
} }

View File

@@ -221,6 +221,18 @@ class OngoingCallControllerTest : SysuiTestCase() {
verify(mockOngoingCallListener).onOngoingCallStateChanged(anyBoolean()) verify(mockOngoingCallListener).onOngoingCallStateChanged(anyBoolean())
} }
/** Regression test for b/201097913. */
@Test
fun onEntryCleanUp_callNotifAddedThenRemoved_listenerNotified() {
val ongoingCallNotifEntry = createOngoingCallNotifEntry()
notifCollectionListener.onEntryAdded(ongoingCallNotifEntry)
reset(mockOngoingCallListener)
notifCollectionListener.onEntryCleanUp(ongoingCallNotifEntry)
verify(mockOngoingCallListener).onOngoingCallStateChanged(anyBoolean())
}
/** Regression test for b/188491504. */ /** Regression test for b/188491504. */
@Test @Test
fun onEntryRemoved_removedNotifHasSameKeyAsAddedNotif_listenerNotified() { fun onEntryRemoved_removedNotifHasSameKeyAsAddedNotif_listenerNotified() {