|
|
@ -4,26 +4,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
package org.mozilla.fenix.ui
|
|
|
|
package org.mozilla.fenix.ui
|
|
|
|
|
|
|
|
|
|
|
|
import androidx.test.platform.app.InstrumentationRegistry
|
|
|
|
|
|
|
|
import androidx.test.uiautomator.UiDevice
|
|
|
|
|
|
|
|
import com.google.android.material.bottomsheet.BottomSheetBehavior
|
|
|
|
import com.google.android.material.bottomsheet.BottomSheetBehavior
|
|
|
|
import mozilla.components.browser.state.store.BrowserStore
|
|
|
|
|
|
|
|
import mozilla.components.concept.engine.mediasession.MediaSession
|
|
|
|
import mozilla.components.concept.engine.mediasession.MediaSession
|
|
|
|
import okhttp3.mockwebserver.MockWebServer
|
|
|
|
|
|
|
|
import org.junit.After
|
|
|
|
|
|
|
|
import org.junit.Before
|
|
|
|
|
|
|
|
import org.junit.Rule
|
|
|
|
import org.junit.Rule
|
|
|
|
import org.junit.Test
|
|
|
|
import org.junit.Test
|
|
|
|
import org.mozilla.fenix.customannotations.SmokeTest
|
|
|
|
import org.mozilla.fenix.customannotations.SmokeTest
|
|
|
|
import org.mozilla.fenix.ext.components
|
|
|
|
|
|
|
|
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
|
|
|
|
|
|
|
|
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
|
|
|
|
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
|
|
|
|
import org.mozilla.fenix.helpers.MatcherHelper
|
|
|
|
import org.mozilla.fenix.helpers.MatcherHelper
|
|
|
|
import org.mozilla.fenix.helpers.RetryTestRule
|
|
|
|
import org.mozilla.fenix.helpers.RetryTestRule
|
|
|
|
import org.mozilla.fenix.helpers.TestAssetHelper
|
|
|
|
import org.mozilla.fenix.helpers.TestAssetHelper
|
|
|
|
import org.mozilla.fenix.helpers.TestHelper.closeApp
|
|
|
|
import org.mozilla.fenix.helpers.TestHelper.closeApp
|
|
|
|
|
|
|
|
import org.mozilla.fenix.helpers.TestHelper.mDevice
|
|
|
|
import org.mozilla.fenix.helpers.TestHelper.restartApp
|
|
|
|
import org.mozilla.fenix.helpers.TestHelper.restartApp
|
|
|
|
import org.mozilla.fenix.helpers.TestHelper.verifySnackBarText
|
|
|
|
import org.mozilla.fenix.helpers.TestHelper.verifySnackBarText
|
|
|
|
|
|
|
|
import org.mozilla.fenix.helpers.TestSetup
|
|
|
|
import org.mozilla.fenix.ui.robots.browserScreen
|
|
|
|
import org.mozilla.fenix.ui.robots.browserScreen
|
|
|
|
import org.mozilla.fenix.ui.robots.clickPageObject
|
|
|
|
import org.mozilla.fenix.ui.robots.clickPageObject
|
|
|
|
import org.mozilla.fenix.ui.robots.homeScreen
|
|
|
|
import org.mozilla.fenix.ui.robots.homeScreen
|
|
|
@ -47,11 +41,7 @@ import org.mozilla.fenix.ui.robots.notificationShade
|
|
|
|
* - Shortcut context menu navigation
|
|
|
|
* - Shortcut context menu navigation
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
class TabbedBrowsingTest {
|
|
|
|
class TabbedBrowsingTest : TestSetup() {
|
|
|
|
private lateinit var mDevice: UiDevice
|
|
|
|
|
|
|
|
private lateinit var mockWebServer: MockWebServer
|
|
|
|
|
|
|
|
private lateinit var browserStore: BrowserStore
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@get:Rule
|
|
|
|
@get:Rule
|
|
|
|
val activityTestRule = HomeActivityIntentTestRule.withDefaultSettingsOverrides(skipOnboarding = true)
|
|
|
|
val activityTestRule = HomeActivityIntentTestRule.withDefaultSettingsOverrides(skipOnboarding = true)
|
|
|
|
|
|
|
|
|
|
|
@ -59,24 +49,6 @@ class TabbedBrowsingTest {
|
|
|
|
@JvmField
|
|
|
|
@JvmField
|
|
|
|
val retryTestRule = RetryTestRule(3)
|
|
|
|
val retryTestRule = RetryTestRule(3)
|
|
|
|
|
|
|
|
|
|
|
|
@Before
|
|
|
|
|
|
|
|
fun setUp() {
|
|
|
|
|
|
|
|
// Initializing this as part of class construction, below the rule would throw a NPE
|
|
|
|
|
|
|
|
// So we are initializing this here instead of in all related tests.
|
|
|
|
|
|
|
|
browserStore = activityTestRule.activity.components.core.store
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
|
|
|
|
|
|
|
|
mockWebServer = MockWebServer().apply {
|
|
|
|
|
|
|
|
dispatcher = AndroidAssetDispatcher()
|
|
|
|
|
|
|
|
start()
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@After
|
|
|
|
|
|
|
|
fun tearDown() {
|
|
|
|
|
|
|
|
mockWebServer.shutdown()
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/903599
|
|
|
|
// TestRail link: https://testrail.stage.mozaws.net/index.php?/cases/view/903599
|
|
|
|
@Test
|
|
|
|
@Test
|
|
|
|
fun closeAllTabsTest() {
|
|
|
|
fun closeAllTabsTest() {
|
|
|
|