Fix error from null intent

Fixes: 201385615
Test: atest MediaDataManagerTest
Change-Id: I0f76061e18044b5c331f098983fac8ada20b3839
This commit is contained in:
Beth Thibodeau
2021-09-28 18:50:13 -04:00
parent 0460004860
commit 8803a2b7c8
2 changed files with 21 additions and 1 deletions

View File

@@ -889,7 +889,7 @@ class MediaDataManager(
dismissIntent = target
.baseAction
.extras
.getParcelable(EXTRAS_SMARTSPACE_DISMISS_INTENT_KEY) as Intent
.getParcelable(EXTRAS_SMARTSPACE_DISMISS_INTENT_KEY) as Intent?
}
packageName(target)?.let {
return SmartspaceMediaData(target.smartspaceTargetId, isActive, true, it,

View File

@@ -404,6 +404,26 @@ class MediaDataManagerTest : SysuiTestCase() {
eq(false))
}
@Test
fun testOnSmartspaceMediaDataLoaded_hasNullIntent_callsListener() {
val recommendationExtras = Bundle().apply {
putString("package_name", PACKAGE_NAME)
putParcelable("dismiss_intent", null)
}
whenever(mediaSmartspaceBaseAction.extras).thenReturn(recommendationExtras)
whenever(mediaSmartspaceTarget.baseAction).thenReturn(mediaSmartspaceBaseAction)
whenever(mediaSmartspaceTarget.iconGrid).thenReturn(listOf())
smartspaceMediaDataProvider.onTargetsAvailable(listOf(mediaSmartspaceTarget))
verify(listener).onSmartspaceMediaDataLoaded(
eq(KEY_MEDIA_SMARTSPACE),
eq(EMPTY_SMARTSPACE_MEDIA_DATA
.copy(targetId = KEY_MEDIA_SMARTSPACE, isActive = true,
isValid = false, dismissIntent = null)),
eq(false))
}
@Test
fun testOnSmartspaceMediaDataLoaded_hasNoneMediaTarget_notCallsListener() {
smartspaceMediaDataProvider.onTargetsAvailable(listOf())