[fenix] For https://github.com/mozilla-mobile/fenix/issues/19876 - Part 1: Refactor...
[gecko.git] / mobile / android / fenix / app / src / test / java / org / mozilla / fenix / components / toolbar / DefaultBrowserToolbarInteractorTest.kt
blob7d87bf5929a281e2030d4177d99235e83dddb385
1 package org.mozilla.fenix.components.toolbar
3 import io.mockk.MockKAnnotations
4 import io.mockk.impl.annotations.RelaxedMockK
5 import io.mockk.mockk
6 import io.mockk.verify
7 import mozilla.components.ui.tabcounter.TabCounterMenu
8 import org.junit.Before
9 import org.junit.Test
10 import org.mozilla.fenix.components.toolbar.interactor.DefaultBrowserToolbarInteractor
12 class DefaultBrowserToolbarInteractorTest {
14     @RelaxedMockK lateinit var browserToolbarController: BrowserToolbarController
15     @RelaxedMockK lateinit var browserToolbarMenuController: BrowserToolbarMenuController
16     lateinit var interactor: DefaultBrowserToolbarInteractor
18     @Before
19     fun setup() {
20         MockKAnnotations.init(this)
21         interactor = DefaultBrowserToolbarInteractor(
22             browserToolbarController,
23             browserToolbarMenuController
24         )
25     }
27     @Test
28     fun onTabCounterClicked() {
29         interactor.onTabCounterClicked()
30         verify { browserToolbarController.handleTabCounterClick() }
31     }
33     @Test
34     fun onTabCounterMenuItemTapped() {
35         val item: TabCounterMenu.Item = mockk()
37         interactor.onTabCounterMenuItemTapped(item)
38         verify { browserToolbarController.handleTabCounterItemInteraction(item) }
39     }
41     @Test
42     fun onBrowserToolbarPaste() {
43         val pastedText = "Mozilla"
44         interactor.onBrowserToolbarPaste(pastedText)
45         verify { browserToolbarController.handleToolbarPaste(pastedText) }
46     }
48     @Test
49     fun onBrowserToolbarPasteAndGo() {
50         val pastedText = "Mozilla"
52         interactor.onBrowserToolbarPasteAndGo(pastedText)
53         verify { browserToolbarController.handleToolbarPasteAndGo(pastedText) }
54     }
56     @Test
57     fun onBrowserToolbarClicked() {
58         interactor.onBrowserToolbarClicked()
60         verify { browserToolbarController.handleToolbarClick() }
61     }
63     @Test
64     fun onBrowserToolbarMenuItemTapped() {
65         val item: ToolbarMenu.Item = mockk()
67         interactor.onBrowserToolbarMenuItemTapped(item)
69         verify { browserToolbarMenuController.handleToolbarItemInteraction(item) }
70     }