From 6f3d21b48dff0e1309d828e8eb97f97cc2c7e460 Mon Sep 17 00:00:00 2001 From: Christian Sadilek Date: Fri, 30 Jul 2021 18:15:50 -0400 Subject: [PATCH] Issue #20533: Fix intermittent test failures of DefaultCollectionCreationControllerTest --- ...DefaultCollectionCreationControllerTest.kt | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/app/src/test/java/org/mozilla/fenix/collections/DefaultCollectionCreationControllerTest.kt b/app/src/test/java/org/mozilla/fenix/collections/DefaultCollectionCreationControllerTest.kt index ffd19fe0f..0ab9a4e98 100644 --- a/app/src/test/java/org/mozilla/fenix/collections/DefaultCollectionCreationControllerTest.kt +++ b/app/src/test/java/org/mozilla/fenix/collections/DefaultCollectionCreationControllerTest.kt @@ -23,6 +23,7 @@ import mozilla.components.support.test.ext.joinBlocking import org.junit.After import org.junit.Assert.assertEquals import org.junit.Assert.assertNull +import org.junit.Assert.assertTrue import org.junit.Before import org.junit.Test import org.mozilla.fenix.components.TabCollectionStorage @@ -36,9 +37,9 @@ class DefaultCollectionCreationControllerTest { private val testCoroutineScope = TestCoroutineScope() private lateinit var state: CollectionCreationState private lateinit var controller: DefaultCollectionCreationController + private var dismissed = false @MockK(relaxed = true) private lateinit var store: CollectionCreationStore - @MockK(relaxed = true) private lateinit var dismiss: () -> Unit @MockK(relaxUnitFun = true) private lateinit var metrics: MetricController @MockK(relaxUnitFun = true) private lateinit var tabCollectionStorage: TabCollectionStorage private lateinit var browserStore: BrowserStore @@ -55,10 +56,13 @@ class DefaultCollectionCreationControllerTest { browserStore = BrowserStore() + dismissed = false controller = DefaultCollectionCreationController( store, browserStore, - dismiss, + dismiss = { + dismissed = true + }, metrics, tabCollectionStorage, testCoroutineScope @@ -89,7 +93,7 @@ class DefaultCollectionCreationControllerTest { controller.saveCollectionName(tabs, "name") - verify { dismiss() } + assertTrue(dismissed) coVerify { tabCollectionStorage.createCollection("name", listOf(tab1)) } verify { metrics.track(Event.CollectionSaved(2, 1)) } } @@ -106,7 +110,7 @@ class DefaultCollectionCreationControllerTest { state = state.copy(tabCollections = emptyList(), tabs = listOf(mockk())) controller.backPressed(SaveCollectionStep.NameCollection) - verify { dismiss() } + assertTrue(dismissed) } @Test @@ -117,16 +121,16 @@ class DefaultCollectionCreationControllerTest { state = state.copy(tabCollections = emptyList(), tabs = listOf(mockk())) controller.backPressed(SaveCollectionStep.SelectCollection) - verify { dismiss() } + assertTrue(dismissed) } @Test fun `GIVEN last step WHEN backPressed is called THEN dismiss should be called`() { controller.backPressed(SaveCollectionStep.SelectTabs) - verify { dismiss() } + assertTrue(dismissed) controller.backPressed(SaveCollectionStep.RenameCollection) - verify { dismiss() } + assertTrue(dismissed) } @Test @@ -136,8 +140,8 @@ class DefaultCollectionCreationControllerTest { controller.renameCollection(collection, "name") advanceUntilIdle() + assertTrue(dismissed) verifyAll { - dismiss() metrics.track(Event.CollectionRenamed) } coVerify { tabCollectionStorage.renameCollection(collection, "name") } @@ -152,7 +156,7 @@ class DefaultCollectionCreationControllerTest { verify { store.dispatch(CollectionCreationAction.RemoveAllTabs) } controller.close() - verify { dismiss() } + assertTrue(dismissed) } @Test @@ -183,7 +187,7 @@ class DefaultCollectionCreationControllerTest { controller.selectCollection(collection, tabs) - verify { dismiss() } + assertTrue(dismissed) coVerify { tabCollectionStorage.addTabsToCollection(collection, listOf(tab1)) } verify { metrics.track(Event.CollectionTabsAdded(2, 1)) } }