|
|
|
@ -23,6 +23,8 @@ import org.junit.Before
|
|
|
|
|
import org.junit.Rule
|
|
|
|
|
import org.junit.Test
|
|
|
|
|
import org.mozilla.fenix.R
|
|
|
|
|
import org.mozilla.fenix.components.metrics.Event
|
|
|
|
|
import org.mozilla.fenix.components.metrics.MetricController
|
|
|
|
|
|
|
|
|
|
@OptIn(ExperimentalCoroutinesApi::class)
|
|
|
|
|
class RecentTabControllerTest {
|
|
|
|
@ -34,6 +36,7 @@ class RecentTabControllerTest {
|
|
|
|
|
|
|
|
|
|
private val navController: NavController = mockk(relaxed = true)
|
|
|
|
|
private val selectTabUseCase: TabsUseCases = mockk(relaxed = true)
|
|
|
|
|
private val metrics: MetricController = mockk(relaxed = true)
|
|
|
|
|
|
|
|
|
|
private lateinit var store: BrowserStore
|
|
|
|
|
private lateinit var controller: RecentTabController
|
|
|
|
@ -45,7 +48,9 @@ class RecentTabControllerTest {
|
|
|
|
|
)
|
|
|
|
|
controller = spyk(DefaultRecentTabsController(
|
|
|
|
|
selectTabUseCase = selectTabUseCase.selectTab,
|
|
|
|
|
navController = navController
|
|
|
|
|
navController = navController,
|
|
|
|
|
metrics = metrics,
|
|
|
|
|
store = store
|
|
|
|
|
))
|
|
|
|
|
|
|
|
|
|
every { navController.currentDestination } returns mockk {
|
|
|
|
@ -67,6 +72,7 @@ class RecentTabControllerTest {
|
|
|
|
|
verify {
|
|
|
|
|
selectTabUseCase.selectTab.invoke(tab.id)
|
|
|
|
|
navController.navigate(R.id.browserFragment)
|
|
|
|
|
metrics.track(Event.OpenRecentTab)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -79,6 +85,7 @@ class RecentTabControllerTest {
|
|
|
|
|
match<NavDirections> { it.actionId == R.id.action_global_tabsTrayFragment },
|
|
|
|
|
null
|
|
|
|
|
)
|
|
|
|
|
metrics.track(Event.ShowAllRecentTabs)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|