Merge "Fix error from null intent" into sc-v2-dev

This commit is contained in:
Beth Thibodeau
2021-09-29 15:27:53 +00:00
committed by Android (Google) Code Review
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())