Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8803a2b7 authored by Beth Thibodeau's avatar Beth Thibodeau
Browse files

Fix error from null intent

Fixes: 201385615
Test: atest MediaDataManagerTest
Change-Id: I0f76061e18044b5c331f098983fac8ada20b3839
parent 04600048
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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,
+20 −0
Original line number Diff line number Diff line
@@ -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())