From 7b422dc1a1a4fdfac47c38587197e1d478981e0b Mon Sep 17 00:00:00 2001 From: Michal Brzezinski Date: Tue, 18 Jan 2022 17:58:21 +0000 Subject: [PATCH] Fixing ControlsRequestDialogTest ControlsRequestDialogTest was flaky because sometimes mocks were cleared (in SysuiTestCase's @AfterClass) before Activity was fully destroyed. The solution here is to not use mock for BroadcastDispatcher and instead use FakeBroadcastDispatcher which just waits to be used. Fixes: 214562366 Test: run ControlsRequestDialogTest 20 times locally without any failures Change-Id: I7d7b932fe175b1e65c7ed21507b0c67a5f39dcfb --- .../controls/management/ControlsRequestDialogTest.kt | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsRequestDialogTest.kt b/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsRequestDialogTest.kt index a328d9e06a742..efb3db7008049 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsRequestDialogTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/controls/management/ControlsRequestDialogTest.kt @@ -32,7 +32,6 @@ import androidx.test.filters.MediumTest import androidx.test.rule.ActivityTestRule import androidx.test.runner.intercepting.SingleActivityFactory import com.android.systemui.SysuiTestCase -import com.android.systemui.broadcast.BroadcastDispatcher import com.android.systemui.controls.controller.ControlInfo import com.android.systemui.controls.controller.ControlsController import com.android.systemui.util.mockito.capture @@ -70,8 +69,6 @@ class ControlsRequestDialogTest : SysuiTestCase() { @Mock private lateinit var listingController: ControlsListingController @Mock - private lateinit var broadcastDispatcher: BroadcastDispatcher - @Mock private lateinit var iIntentSender: IIntentSender @Captor private lateinit var captor: ArgumentCaptor @@ -85,7 +82,7 @@ class ControlsRequestDialogTest : SysuiTestCase() { override fun create(intent: Intent?): TestControlsRequestDialog { return TestControlsRequestDialog( controller, - broadcastDispatcher, + fakeBroadcastDispatcher, listingController ) }