Merge "On notification update, take the newest value of shouldHeadsUp" into tm-qpr-dev

This commit is contained in:
Yuri Lin
2022-10-04 18:09:42 +00:00
committed by Android (Google) Code Review
2 changed files with 35 additions and 1 deletions

View File

@@ -393,7 +393,7 @@ class HeadsUpCoordinator @Inject constructor(
val posted = mPostedEntries.compute(entry.key) { _, value ->
value?.also { update ->
update.wasUpdated = true
update.shouldHeadsUpEver = update.shouldHeadsUpEver || shouldHeadsUpEver
update.shouldHeadsUpEver = shouldHeadsUpEver
update.shouldHeadsUpAgain = update.shouldHeadsUpAgain || shouldHeadsUpAgain
update.isAlerting = isAlerting
update.isBinding = isBinding

View File

@@ -336,6 +336,40 @@ class HeadsUpCoordinatorTest : SysuiTestCase() {
verify(mHeadsUpManager, never()).showNotification(mEntry)
}
@Test
fun testOnEntryUpdated_toAlert() {
// GIVEN that an entry is posted that should not heads up
setShouldHeadsUp(mEntry, false)
mCollectionListener.onEntryAdded(mEntry)
// WHEN it's updated to heads up
setShouldHeadsUp(mEntry)
mCollectionListener.onEntryUpdated(mEntry)
mBeforeTransformGroupsListener.onBeforeTransformGroups(listOf(mEntry))
mBeforeFinalizeFilterListener.onBeforeFinalizeFilter(listOf(mEntry))
// THEN the notification alerts
finishBind(mEntry)
verify(mHeadsUpManager).showNotification(mEntry)
}
@Test
fun testOnEntryUpdated_toNotAlert() {
// GIVEN that an entry is posted that should heads up
setShouldHeadsUp(mEntry)
mCollectionListener.onEntryAdded(mEntry)
// WHEN it's updated to not heads up
setShouldHeadsUp(mEntry, false)
mCollectionListener.onEntryUpdated(mEntry)
mBeforeTransformGroupsListener.onBeforeTransformGroups(listOf(mEntry))
mBeforeFinalizeFilterListener.onBeforeFinalizeFilter(listOf(mEntry))
// THEN the notification is never bound or shown
verify(mHeadsUpViewBinder, never()).bindHeadsUpView(any(), any())
verify(mHeadsUpManager, never()).showNotification(any())
}
@Test
fun testOnEntryRemovedRemovesHeadsUpNotification() {
// GIVEN the current HUN is mEntry