Loading packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/NotificationInfoTest.kt +29 −5 Original line number Diff line number Diff line Loading @@ -67,8 +67,8 @@ import com.android.systemui.statusbar.notification.collection.NotificationEntryB import com.android.systemui.statusbar.notification.promoted.domain.interactor.PackageDemotionInteractor import com.android.systemui.statusbar.notification.row.icon.AppIconProvider import com.android.systemui.statusbar.notification.row.icon.NotificationIconStyleProvider import com.android.systemui.statusbar.notification.row.icon.appIconProvider import com.android.systemui.statusbar.notification.row.icon.notificationIconStyleProvider import com.android.systemui.statusbar.notification.row.icon.mockAppIconProvider import com.android.systemui.statusbar.notification.row.icon.mockNotificationIconStyleProvider import com.android.systemui.testKosmos import com.android.telecom.telecomManager import com.google.common.truth.Truth.assertThat Loading @@ -80,6 +80,7 @@ import org.mockito.ArgumentMatchers.anyBoolean import org.mockito.ArgumentMatchers.anyInt import org.mockito.ArgumentMatchers.anyString import org.mockito.kotlin.any import org.mockito.kotlin.anyOrNull import org.mockito.kotlin.argumentCaptor import org.mockito.kotlin.eq import org.mockito.kotlin.mock Loading @@ -101,6 +102,8 @@ class NotificationInfoTest : SysuiTestCase() { private lateinit var entry: NotificationEntry private val mockPackageManager = kosmos.mockPackageManager private val mockAppIconProvider = kosmos.mockAppIconProvider private val mockIconStyleProvider = kosmos.mockNotificationIconStyleProvider private val uiEventLogger = kosmos.uiEventLoggerFake private val testableLooper by lazy { kosmos.testableLooper } Loading Loading @@ -202,7 +205,8 @@ class NotificationInfoTest : SysuiTestCase() { } @Test fun testBindNotification_SetsPackageIcon() { @DisableFlags(com.android.systemui.Flags.FLAG_NOTIFICATIONS_REDESIGN_GUTS) fun testBindNotification_SetsPackageIcon_flagOff() { val iconDrawable = mock<Drawable>() whenever(mockPackageManager.getApplicationIcon(any<ApplicationInfo>())) .thenReturn(iconDrawable) Loading @@ -211,6 +215,26 @@ class NotificationInfoTest : SysuiTestCase() { assertThat(iconView.drawable).isEqualTo(iconDrawable) } @Test @EnableFlags(com.android.systemui.Flags.FLAG_NOTIFICATIONS_REDESIGN_GUTS) fun testBindNotification_SetsPackageIcon_flagOn() { val iconDrawable = mock<Drawable>() whenever(mockIconStyleProvider.shouldShowWorkProfileBadge(anyOrNull(), anyOrNull())) .thenReturn(false) whenever( mockAppIconProvider.getOrFetchAppIcon( anyOrNull(), anyOrNull(), anyBoolean(), anyBoolean(), ) ) .thenReturn(iconDrawable) bindNotification() val iconView = underTest.findViewById<ImageView>(R.id.pkg_icon) assertThat(iconView.drawable).isEqualTo(iconDrawable) } @Test fun testBindNotification_noDelegate() { bindNotification() Loading Loading @@ -894,8 +918,8 @@ class NotificationInfoTest : SysuiTestCase() { private fun bindNotification( pm: PackageManager = this.mockPackageManager, iNotificationManager: INotificationManager = this.mockINotificationManager, appIconProvider: AppIconProvider = kosmos.appIconProvider, iconStyleProvider: NotificationIconStyleProvider = kosmos.notificationIconStyleProvider, appIconProvider: AppIconProvider = this.mockAppIconProvider, iconStyleProvider: NotificationIconStyleProvider = this.mockIconStyleProvider, onUserInteractionCallback: OnUserInteractionCallback = this.onUserInteractionCallback, channelEditorDialogController: ChannelEditorDialogController = this.channelEditorDialogController, Loading packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/row/icon/AppIconProviderKosmos.kt +3 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,9 @@ package com.android.systemui.statusbar.notification.row.icon import android.content.applicationContext import com.android.systemui.dump.dumpManager import com.android.systemui.kosmos.Kosmos import org.mockito.kotlin.mock val Kosmos.mockAppIconProvider by Kosmos.Fixture { mock<AppIconProvider>() } val Kosmos.appIconProvider by Kosmos.Fixture { AppIconProviderImpl(applicationContext, dumpManager) } packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/row/icon/NotificationIconStyleProviderKosmos.kt +4 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,10 @@ package com.android.systemui.statusbar.notification.row.icon import android.os.userManager import com.android.systemui.dump.dumpManager import com.android.systemui.kosmos.Kosmos import org.mockito.kotlin.mock val Kosmos.mockNotificationIconStyleProvider by Kosmos.Fixture { mock<NotificationIconStyleProvider>() } val Kosmos.notificationIconStyleProvider by Kosmos.Fixture { NotificationIconStyleProviderImpl(userManager, dumpManager) } Loading
packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/notification/row/NotificationInfoTest.kt +29 −5 Original line number Diff line number Diff line Loading @@ -67,8 +67,8 @@ import com.android.systemui.statusbar.notification.collection.NotificationEntryB import com.android.systemui.statusbar.notification.promoted.domain.interactor.PackageDemotionInteractor import com.android.systemui.statusbar.notification.row.icon.AppIconProvider import com.android.systemui.statusbar.notification.row.icon.NotificationIconStyleProvider import com.android.systemui.statusbar.notification.row.icon.appIconProvider import com.android.systemui.statusbar.notification.row.icon.notificationIconStyleProvider import com.android.systemui.statusbar.notification.row.icon.mockAppIconProvider import com.android.systemui.statusbar.notification.row.icon.mockNotificationIconStyleProvider import com.android.systemui.testKosmos import com.android.telecom.telecomManager import com.google.common.truth.Truth.assertThat Loading @@ -80,6 +80,7 @@ import org.mockito.ArgumentMatchers.anyBoolean import org.mockito.ArgumentMatchers.anyInt import org.mockito.ArgumentMatchers.anyString import org.mockito.kotlin.any import org.mockito.kotlin.anyOrNull import org.mockito.kotlin.argumentCaptor import org.mockito.kotlin.eq import org.mockito.kotlin.mock Loading @@ -101,6 +102,8 @@ class NotificationInfoTest : SysuiTestCase() { private lateinit var entry: NotificationEntry private val mockPackageManager = kosmos.mockPackageManager private val mockAppIconProvider = kosmos.mockAppIconProvider private val mockIconStyleProvider = kosmos.mockNotificationIconStyleProvider private val uiEventLogger = kosmos.uiEventLoggerFake private val testableLooper by lazy { kosmos.testableLooper } Loading Loading @@ -202,7 +205,8 @@ class NotificationInfoTest : SysuiTestCase() { } @Test fun testBindNotification_SetsPackageIcon() { @DisableFlags(com.android.systemui.Flags.FLAG_NOTIFICATIONS_REDESIGN_GUTS) fun testBindNotification_SetsPackageIcon_flagOff() { val iconDrawable = mock<Drawable>() whenever(mockPackageManager.getApplicationIcon(any<ApplicationInfo>())) .thenReturn(iconDrawable) Loading @@ -211,6 +215,26 @@ class NotificationInfoTest : SysuiTestCase() { assertThat(iconView.drawable).isEqualTo(iconDrawable) } @Test @EnableFlags(com.android.systemui.Flags.FLAG_NOTIFICATIONS_REDESIGN_GUTS) fun testBindNotification_SetsPackageIcon_flagOn() { val iconDrawable = mock<Drawable>() whenever(mockIconStyleProvider.shouldShowWorkProfileBadge(anyOrNull(), anyOrNull())) .thenReturn(false) whenever( mockAppIconProvider.getOrFetchAppIcon( anyOrNull(), anyOrNull(), anyBoolean(), anyBoolean(), ) ) .thenReturn(iconDrawable) bindNotification() val iconView = underTest.findViewById<ImageView>(R.id.pkg_icon) assertThat(iconView.drawable).isEqualTo(iconDrawable) } @Test fun testBindNotification_noDelegate() { bindNotification() Loading Loading @@ -894,8 +918,8 @@ class NotificationInfoTest : SysuiTestCase() { private fun bindNotification( pm: PackageManager = this.mockPackageManager, iNotificationManager: INotificationManager = this.mockINotificationManager, appIconProvider: AppIconProvider = kosmos.appIconProvider, iconStyleProvider: NotificationIconStyleProvider = kosmos.notificationIconStyleProvider, appIconProvider: AppIconProvider = this.mockAppIconProvider, iconStyleProvider: NotificationIconStyleProvider = this.mockIconStyleProvider, onUserInteractionCallback: OnUserInteractionCallback = this.onUserInteractionCallback, channelEditorDialogController: ChannelEditorDialogController = this.channelEditorDialogController, Loading
packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/row/icon/AppIconProviderKosmos.kt +3 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,9 @@ package com.android.systemui.statusbar.notification.row.icon import android.content.applicationContext import com.android.systemui.dump.dumpManager import com.android.systemui.kosmos.Kosmos import org.mockito.kotlin.mock val Kosmos.mockAppIconProvider by Kosmos.Fixture { mock<AppIconProvider>() } val Kosmos.appIconProvider by Kosmos.Fixture { AppIconProviderImpl(applicationContext, dumpManager) }
packages/SystemUI/tests/utils/src/com/android/systemui/statusbar/notification/row/icon/NotificationIconStyleProviderKosmos.kt +4 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,10 @@ package com.android.systemui.statusbar.notification.row.icon import android.os.userManager import com.android.systemui.dump.dumpManager import com.android.systemui.kosmos.Kosmos import org.mockito.kotlin.mock val Kosmos.mockNotificationIconStyleProvider by Kosmos.Fixture { mock<NotificationIconStyleProvider>() } val Kosmos.notificationIconStyleProvider by Kosmos.Fixture { NotificationIconStyleProviderImpl(userManager, dumpManager) }