|
|
|
@ -384,16 +384,23 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectDefaultTopSite() {
|
|
|
|
|
val topSiteUrl = "mozilla.org"
|
|
|
|
|
val topSite = TopSite.Default(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "Mozilla",
|
|
|
|
|
url = "mozilla.org",
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(searchEngine)
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.DEFAULT)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenInNewTab) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenDefault) }
|
|
|
|
|
verify {
|
|
|
|
|
tabsUseCases.addTab.invoke(
|
|
|
|
|
topSiteUrl,
|
|
|
|
|
url = topSite.url,
|
|
|
|
|
selectTab = true,
|
|
|
|
|
startLoading = true
|
|
|
|
|
)
|
|
|
|
@ -403,15 +410,22 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectNonDefaultTopSite() {
|
|
|
|
|
val topSiteUrl = "mozilla.org"
|
|
|
|
|
val topSite = TopSite.Frecent(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "Mozilla",
|
|
|
|
|
url = "mozilla.org",
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(searchEngine)
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.FRECENT)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenInNewTab) }
|
|
|
|
|
verify {
|
|
|
|
|
tabsUseCases.addTab.invoke(
|
|
|
|
|
topSiteUrl,
|
|
|
|
|
url = topSite.url,
|
|
|
|
|
selectTab = true,
|
|
|
|
|
startLoading = true
|
|
|
|
|
)
|
|
|
|
@ -421,13 +435,20 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectGoogleDefaultTopSiteUS() {
|
|
|
|
|
val topSiteUrl = SupportUtils.GOOGLE_URL
|
|
|
|
|
val topSite = TopSite.Default(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "Google",
|
|
|
|
|
url = SupportUtils.GOOGLE_URL,
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(searchEngine)
|
|
|
|
|
|
|
|
|
|
store.dispatch(SearchAction.SetRegionAction(RegionState("US", "US"))).joinBlocking()
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.DEFAULT)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenInNewTab) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenDefault) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenGoogle) }
|
|
|
|
@ -443,13 +464,20 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectGoogleDefaultTopSiteXX() {
|
|
|
|
|
val topSiteUrl = SupportUtils.GOOGLE_URL
|
|
|
|
|
val topSite = TopSite.Default(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "Google",
|
|
|
|
|
url = SupportUtils.GOOGLE_URL,
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(searchEngine)
|
|
|
|
|
|
|
|
|
|
store.dispatch(SearchAction.SetRegionAction(RegionState("DE", "FR"))).joinBlocking()
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.DEFAULT)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenInNewTab) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenDefault) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenGoogle) }
|
|
|
|
@ -465,16 +493,23 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectGoogleDefaultTopSite_EventPerformedSearchTopSite() {
|
|
|
|
|
val topSiteUrl = SupportUtils.GOOGLE_URL
|
|
|
|
|
val topSite = TopSite.Default(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "Google",
|
|
|
|
|
url = SupportUtils.GOOGLE_URL,
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val engineSource = EngineSource.Default(googleSearchEngine, false)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(googleSearchEngine)
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
mockkStatic("mozilla.components.browser.state.state.SearchStateKt")
|
|
|
|
|
|
|
|
|
|
every { any<SearchState>().selectedOrDefaultSearchEngine } returns googleSearchEngine
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.DEFAULT)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify {
|
|
|
|
|
metrics.track(
|
|
|
|
@ -494,16 +529,23 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectDuckDuckGoTopSite_EventPerformedSearchTopSite() {
|
|
|
|
|
val topSiteUrl = "https://duckduckgo.com"
|
|
|
|
|
val topSite = TopSite.Pinned(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "DuckDuckGo",
|
|
|
|
|
url = "https://duckduckgo.com",
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val engineSource = EngineSource.Shortcut(duckDuckGoSearchEngine, false)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(googleSearchEngine, duckDuckGoSearchEngine)
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
mockkStatic("mozilla.components.browser.state.state.SearchStateKt")
|
|
|
|
|
|
|
|
|
|
every { any<SearchState>().selectedOrDefaultSearchEngine } returns googleSearchEngine
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.PINNED)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify {
|
|
|
|
|
metrics.track(
|
|
|
|
@ -523,13 +565,20 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectGooglePinnedTopSiteUS() {
|
|
|
|
|
val topSiteUrl = SupportUtils.GOOGLE_URL
|
|
|
|
|
val topSite = TopSite.Pinned(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "Google",
|
|
|
|
|
url = SupportUtils.GOOGLE_URL,
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(searchEngine)
|
|
|
|
|
|
|
|
|
|
store.dispatch(SearchAction.SetRegionAction(RegionState("US", "US"))).joinBlocking()
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.PINNED)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenInNewTab) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenPinned) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenGoogle) }
|
|
|
|
@ -545,13 +594,20 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectGooglePinnedTopSiteXX() {
|
|
|
|
|
val topSiteUrl = SupportUtils.GOOGLE_URL
|
|
|
|
|
val topSite = TopSite.Pinned(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "Google",
|
|
|
|
|
url = SupportUtils.GOOGLE_URL,
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(searchEngine)
|
|
|
|
|
|
|
|
|
|
store.dispatch(SearchAction.SetRegionAction(RegionState("DE", "FR"))).joinBlocking()
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.PINNED)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenInNewTab) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenPinned) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenGoogle) }
|
|
|
|
@ -567,13 +623,20 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectGoogleFrecentTopSiteUS() {
|
|
|
|
|
val topSiteUrl = SupportUtils.GOOGLE_URL
|
|
|
|
|
val topSite = TopSite.Frecent(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "Google",
|
|
|
|
|
url = SupportUtils.GOOGLE_URL,
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(searchEngine)
|
|
|
|
|
|
|
|
|
|
store.dispatch(SearchAction.SetRegionAction(RegionState("US", "US"))).joinBlocking()
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.FRECENT)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenInNewTab) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenFrecent) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenGoogle) }
|
|
|
|
@ -589,13 +652,20 @@ class DefaultSessionControlControllerTest {
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
fun handleSelectGoogleFrecentTopSiteXX() {
|
|
|
|
|
val topSiteUrl = SupportUtils.GOOGLE_URL
|
|
|
|
|
val topSite = TopSite.Frecent(
|
|
|
|
|
id = 1L,
|
|
|
|
|
title = "Google",
|
|
|
|
|
url = SupportUtils.GOOGLE_URL,
|
|
|
|
|
createdAt = 0
|
|
|
|
|
)
|
|
|
|
|
val controller = spyk(createController())
|
|
|
|
|
|
|
|
|
|
every { controller.getAvailableSearchEngines() } returns listOf(searchEngine)
|
|
|
|
|
|
|
|
|
|
store.dispatch(SearchAction.SetRegionAction(RegionState("DE", "FR"))).joinBlocking()
|
|
|
|
|
|
|
|
|
|
controller.handleSelectTopSite(topSiteUrl, TopSite.Type.FRECENT)
|
|
|
|
|
controller.handleSelectTopSite(topSite)
|
|
|
|
|
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenInNewTab) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenFrecent) }
|
|
|
|
|
verify { metrics.track(Event.TopSiteOpenGoogle) }
|
|
|
|
|