From 8764e7dcecc6e254a12ab0c61883a7d3eaddaa23 Mon Sep 17 00:00:00 2001 From: Jonathan Almeida Date: Wed, 16 Jun 2021 22:56:34 -0400 Subject: [PATCH] [fenix] Close https://github.com/mozilla-mobile/fenix/issues/19950: Fix intermittent failure in SearchDialogControllerTest --- .../mozilla/fenix/search/SearchDialogControllerTest.kt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/src/test/java/org/mozilla/fenix/search/SearchDialogControllerTest.kt b/app/src/test/java/org/mozilla/fenix/search/SearchDialogControllerTest.kt index dc8edd681e..d5a26c7cbb 100644 --- a/app/src/test/java/org/mozilla/fenix/search/SearchDialogControllerTest.kt +++ b/app/src/test/java/org/mozilla/fenix/search/SearchDialogControllerTest.kt @@ -23,6 +23,7 @@ import mozilla.components.browser.state.search.SearchEngine import mozilla.components.browser.state.state.BrowserState import mozilla.components.browser.state.store.BrowserStore import mozilla.components.feature.tabs.TabsUseCases +import mozilla.components.support.test.libstate.ext.waitUntilIdle import mozilla.components.support.test.middleware.CaptureActionsMiddleware import org.junit.After import org.junit.Assert.assertEquals @@ -58,6 +59,7 @@ class SearchDialogControllerTest { private lateinit var controller: SearchDialogController private lateinit var middleware: CaptureActionsMiddleware + private lateinit var browserStore: BrowserStore @get:Rule val disableNavGraphProviderAssertionRule = DisableNavGraphProviderAssertionRule() @@ -67,7 +69,7 @@ class SearchDialogControllerTest { MockKAnnotations.init(this) mockkObject(MetricsUtils) middleware = CaptureActionsMiddleware() - val browserStore = BrowserStore( + browserStore = BrowserStore( middleware = listOf(middleware) ) every { store.state.tabId } returns "test-tab-id" @@ -336,6 +338,8 @@ class SearchDialogControllerTest { fun handleExistingSessionSelected() { controller.handleExistingSessionSelected("selected") + browserStore.waitUntilIdle() + middleware.assertFirstAction(TabListAction.SelectTabAction::class) { action -> assertEquals("selected", action.tabId) } @@ -347,6 +351,8 @@ class SearchDialogControllerTest { fun handleExistingSessionSelected_tabId() { controller.handleExistingSessionSelected("tab-id") + browserStore.waitUntilIdle() + middleware.assertFirstAction(TabListAction.SelectTabAction::class) { action -> assertEquals("tab-id", action.tabId) }