|
|
@ -18,8 +18,6 @@ import io.mockk.verify
|
|
|
|
import io.mockk.verifyOrder
|
|
|
|
import io.mockk.verifyOrder
|
|
|
|
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
|
|
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
|
|
import kotlinx.coroutines.test.TestCoroutineScope
|
|
|
|
import kotlinx.coroutines.test.TestCoroutineScope
|
|
|
|
import mozilla.components.browser.session.Session
|
|
|
|
|
|
|
|
import mozilla.components.browser.session.SessionManager
|
|
|
|
|
|
|
|
import mozilla.components.browser.state.state.BrowserState
|
|
|
|
import mozilla.components.browser.state.state.BrowserState
|
|
|
|
import mozilla.components.browser.state.state.TabSessionState
|
|
|
|
import mozilla.components.browser.state.state.TabSessionState
|
|
|
|
import mozilla.components.browser.state.state.createTab
|
|
|
|
import mozilla.components.browser.state.state.createTab
|
|
|
@ -41,14 +39,12 @@ import org.mozilla.fenix.browser.browsingmode.BrowsingModeManager
|
|
|
|
import org.mozilla.fenix.components.TabCollectionStorage
|
|
|
|
import org.mozilla.fenix.components.TabCollectionStorage
|
|
|
|
import org.mozilla.fenix.components.metrics.Event
|
|
|
|
import org.mozilla.fenix.components.metrics.Event
|
|
|
|
import org.mozilla.fenix.components.metrics.MetricController
|
|
|
|
import org.mozilla.fenix.components.metrics.MetricController
|
|
|
|
import org.mozilla.fenix.ext.sessionsOfType
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@OptIn(ExperimentalCoroutinesApi::class)
|
|
|
|
@OptIn(ExperimentalCoroutinesApi::class)
|
|
|
|
class DefaultTabTrayControllerTest {
|
|
|
|
class DefaultTabTrayControllerTest {
|
|
|
|
private val activity: HomeActivity = mockk(relaxed = true)
|
|
|
|
private val activity: HomeActivity = mockk(relaxed = true)
|
|
|
|
private val profiler: Profiler? = mockk(relaxed = true)
|
|
|
|
private val profiler: Profiler? = mockk(relaxed = true)
|
|
|
|
private val navController: NavController = mockk()
|
|
|
|
private val navController: NavController = mockk()
|
|
|
|
private val sessionManager: SessionManager = mockk(relaxed = true)
|
|
|
|
|
|
|
|
private val browsingModeManager: BrowsingModeManager = mockk(relaxed = true)
|
|
|
|
private val browsingModeManager: BrowsingModeManager = mockk(relaxed = true)
|
|
|
|
private val dismissTabTray: (() -> Unit) = mockk(relaxed = true)
|
|
|
|
private val dismissTabTray: (() -> Unit) = mockk(relaxed = true)
|
|
|
|
private val dismissTabTrayAndNavigateHome: ((String) -> Unit) = mockk(relaxed = true)
|
|
|
|
private val dismissTabTrayAndNavigateHome: ((String) -> Unit) = mockk(relaxed = true)
|
|
|
@ -72,16 +68,6 @@ class DefaultTabTrayControllerTest {
|
|
|
|
private val tab1 = createTab(url = "http://firefox.com", id = "5678")
|
|
|
|
private val tab1 = createTab(url = "http://firefox.com", id = "5678")
|
|
|
|
private val tab2 = createTab(url = "http://mozilla.org", id = "1234")
|
|
|
|
private val tab2 = createTab(url = "http://mozilla.org", id = "1234")
|
|
|
|
|
|
|
|
|
|
|
|
private val session = Session(
|
|
|
|
|
|
|
|
"mozilla.org",
|
|
|
|
|
|
|
|
true
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private val nonPrivateSession = Session(
|
|
|
|
|
|
|
|
"mozilla.org",
|
|
|
|
|
|
|
|
false
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Before
|
|
|
|
@Before
|
|
|
|
fun setUp() {
|
|
|
|
fun setUp() {
|
|
|
|
mockkStatic("org.mozilla.fenix.ext.SessionManagerKt")
|
|
|
|
mockkStatic("org.mozilla.fenix.ext.SessionManagerKt")
|
|
|
@ -92,15 +78,7 @@ class DefaultTabTrayControllerTest {
|
|
|
|
)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
every { sessionManager.sessionsOfType(private = true) } returns listOf(session).asSequence()
|
|
|
|
|
|
|
|
every { sessionManager.sessionsOfType(private = false) } returns listOf(nonPrivateSession).asSequence()
|
|
|
|
|
|
|
|
every { sessionManager.createSessionSnapshot(any()) } returns SessionManager.Snapshot.Item(
|
|
|
|
|
|
|
|
session
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
every { sessionManager.findSessionById("1234") } returns session
|
|
|
|
|
|
|
|
every { sessionManager.remove(any()) } just Runs
|
|
|
|
|
|
|
|
every { tabCollectionStorage.cachedTabCollections } returns cachedTabCollections
|
|
|
|
every { tabCollectionStorage.cachedTabCollections } returns cachedTabCollections
|
|
|
|
every { sessionManager.selectedSession } returns nonPrivateSession
|
|
|
|
|
|
|
|
every { navController.navigate(any<NavDirections>()) } just Runs
|
|
|
|
every { navController.navigate(any<NavDirections>()) } just Runs
|
|
|
|
every { navController.currentDestination } returns currentDestination
|
|
|
|
every { navController.currentDestination } returns currentDestination
|
|
|
|
every { currentDestination.id } returns R.id.browserFragment
|
|
|
|
every { currentDestination.id } returns R.id.browserFragment
|
|
|
@ -109,7 +87,6 @@ class DefaultTabTrayControllerTest {
|
|
|
|
controller = DefaultTabTrayController(
|
|
|
|
controller = DefaultTabTrayController(
|
|
|
|
activity = activity,
|
|
|
|
activity = activity,
|
|
|
|
profiler = profiler,
|
|
|
|
profiler = profiler,
|
|
|
|
sessionManager = sessionManager,
|
|
|
|
|
|
|
|
browserStore = store,
|
|
|
|
browserStore = store,
|
|
|
|
browsingModeManager = browsingModeManager,
|
|
|
|
browsingModeManager = browsingModeManager,
|
|
|
|
tabCollectionStorage = tabCollectionStorage,
|
|
|
|
tabCollectionStorage = tabCollectionStorage,
|
|
|
|