[fenix] For https://github.com/mozilla-mobile/fenix/issues/18421 re-enable verifyContextOpenImageNewTab, verifyContextOpenLinkNewTab & verifyContextOpenLinkPrivateTab UI tests

pull/600/head
AndiAJ 3 years ago committed by mergify[bot]
parent d116c95205
commit 66862fa992

@ -9,7 +9,6 @@ import androidx.test.uiautomator.UiDevice
import okhttp3.mockwebserver.MockWebServer import okhttp3.mockwebserver.MockWebServer
import org.junit.After import org.junit.After
import org.junit.Before import org.junit.Before
import org.junit.Ignore
import org.junit.Rule import org.junit.Rule
import org.junit.Test import org.junit.Test
import org.mozilla.fenix.ext.settings import org.mozilla.fenix.ext.settings
@ -54,7 +53,6 @@ class ContextMenusTest {
mockWebServer.shutdown() mockWebServer.shutdown()
} }
@Ignore("Test failures: https://github.com/mozilla-mobile/fenix/issues/18421")
@Test @Test
fun verifyContextOpenLinkNewTab() { fun verifyContextOpenLinkNewTab() {
val pageLinks = val pageLinks =
@ -69,7 +67,7 @@ class ContextMenusTest {
verifyLinkContextMenuItems(genericURL.url) verifyLinkContextMenuItems(genericURL.url)
clickContextOpenLinkInNewTab() clickContextOpenLinkInNewTab()
verifySnackBarText("New tab opened") verifySnackBarText("New tab opened")
snackBarButtonClick("Switch") snackBarButtonClick()
verifyUrl(genericURL.url.toString()) verifyUrl(genericURL.url.toString())
}.openTabDrawer { }.openTabDrawer {
verifyNormalModeSelected() verifyNormalModeSelected()
@ -78,7 +76,6 @@ class ContextMenusTest {
} }
} }
@Ignore("Test failures: https://github.com/mozilla-mobile/fenix/issues/18421")
@Test @Test
fun verifyContextOpenLinkPrivateTab() { fun verifyContextOpenLinkPrivateTab() {
val pageLinks = val pageLinks =
@ -93,7 +90,7 @@ class ContextMenusTest {
verifyLinkContextMenuItems(genericURL.url) verifyLinkContextMenuItems(genericURL.url)
clickContextOpenLinkInPrivateTab() clickContextOpenLinkInPrivateTab()
verifySnackBarText("New private tab opened") verifySnackBarText("New private tab opened")
snackBarButtonClick("Switch") snackBarButtonClick()
verifyUrl(genericURL.url.toString()) verifyUrl(genericURL.url.toString())
}.openTabDrawer { }.openTabDrawer {
verifyPrivateModeSelected() verifyPrivateModeSelected()
@ -137,7 +134,6 @@ class ContextMenusTest {
} }
} }
@Ignore("Intermittent: https://github.com/mozilla-mobile/fenix/issues/12367")
@Test @Test
fun verifyContextOpenImageNewTab() { fun verifyContextOpenImageNewTab() {
val pageLinks = val pageLinks =
@ -152,7 +148,7 @@ class ContextMenusTest {
verifyLinkImageContextMenuItems(imageResource.url) verifyLinkImageContextMenuItems(imageResource.url)
clickContextOpenImageNewTab() clickContextOpenImageNewTab()
verifySnackBarText("New tab opened") verifySnackBarText("New tab opened")
snackBarButtonClick("Switch") snackBarButtonClick()
verifyUrl(imageResource.url.toString()) verifyUrl(imageResource.url.toString())
} }
} }

@ -20,7 +20,6 @@ import androidx.test.espresso.intent.matcher.IntentMatchers
import androidx.test.espresso.matcher.RootMatchers.isDialog import androidx.test.espresso.matcher.RootMatchers.isDialog
import androidx.test.espresso.matcher.ViewMatchers import androidx.test.espresso.matcher.ViewMatchers
import androidx.test.espresso.matcher.ViewMatchers.Visibility import androidx.test.espresso.matcher.ViewMatchers.Visibility
import androidx.test.espresso.matcher.ViewMatchers.isCompletelyDisplayed
import androidx.test.espresso.matcher.ViewMatchers.isDisplayed import androidx.test.espresso.matcher.ViewMatchers.isDisplayed
import androidx.test.espresso.matcher.ViewMatchers.withContentDescription import androidx.test.espresso.matcher.ViewMatchers.withContentDescription
import androidx.test.espresso.matcher.ViewMatchers.withEffectiveVisibility import androidx.test.espresso.matcher.ViewMatchers.withEffectiveVisibility
@ -45,6 +44,7 @@ import org.mozilla.fenix.helpers.Constants.LONG_CLICK_DURATION
import org.mozilla.fenix.helpers.SessionLoadedIdlingResource import org.mozilla.fenix.helpers.SessionLoadedIdlingResource
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTime import org.mozilla.fenix.helpers.TestAssetHelper.waitingTime
import org.mozilla.fenix.helpers.TestHelper.packageName import org.mozilla.fenix.helpers.TestHelper.packageName
import org.mozilla.fenix.helpers.TestHelper.waitForObjects
import org.mozilla.fenix.helpers.click import org.mozilla.fenix.helpers.click
import org.mozilla.fenix.helpers.ext.waitNotNull import org.mozilla.fenix.helpers.ext.waitNotNull
@ -112,11 +112,13 @@ class BrowserRobot {
} }
fun verifySnackBarText(expectedText: String) { fun verifySnackBarText(expectedText: String) {
val mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) mDevice.waitForObjects(mDevice.findObject(UiSelector().textContains(expectedText)))
mDevice.waitNotNull(Until.findObject(text(expectedText)), waitingTime)
onView(withText(expectedText)).check( assertTrue(
matches(isCompletelyDisplayed()) mDevice.findObject(
UiSelector()
.textContains(expectedText)
).waitForExists(waitingTime)
) )
} }
@ -401,10 +403,14 @@ class BrowserRobot {
} }
} }
fun snackBarButtonClick(expectedText: String) { fun snackBarButtonClick() {
onView(allOf(withId(R.id.snackbar_btn), withText(expectedText))).check( val switchButton =
matches(withEffectiveVisibility(ViewMatchers.Visibility.VISIBLE)) mDevice.findObject(
).perform(ViewActions.click()) UiSelector()
.resourceId("$packageName:id/snackbar_btn")
)
switchButton.waitForExists(waitingTime)
switchButton.clickAndWaitForNewWindow(waitingTime)
} }
fun verifySaveLoginPromptIsShown() { fun verifySaveLoginPromptIsShown() {

Loading…
Cancel
Save