[fenix] Bug 1808880 and 1809645 - Fix flaky useAppWhileTabIsCrashedTest and privateBrowsingUseAppWhileTabIsCrashedTest UI tests

pull/600/head
AndiAJ 2 years ago committed by mergify[bot]
parent ddc43cf05d
commit 4a54677c83

@ -44,6 +44,7 @@ import org.mozilla.fenix.R
import org.mozilla.fenix.ext.components import org.mozilla.fenix.ext.components
import org.mozilla.fenix.helpers.Constants.LONG_CLICK_DURATION import org.mozilla.fenix.helpers.Constants.LONG_CLICK_DURATION
import org.mozilla.fenix.helpers.Constants.RETRY_COUNT import org.mozilla.fenix.helpers.Constants.RETRY_COUNT
import org.mozilla.fenix.helpers.MatcherHelper
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.TestAssetHelper.waitingTimeLong import org.mozilla.fenix.helpers.TestAssetHelper.waitingTimeLong
@ -911,22 +912,32 @@ class BrowserRobot {
} }
fun openTabDrawer(interact: TabDrawerRobot.() -> Unit): TabDrawerRobot.Transition { fun openTabDrawer(interact: TabDrawerRobot.() -> Unit): TabDrawerRobot.Transition {
mDevice.waitForObjects( for (i in 1..RETRY_COUNT) {
mDevice.findObject( try {
UiSelector() mDevice.waitForObjects(
.resourceId("$packageName:id/mozac_browser_toolbar_browser_actions"), mDevice.findObject(
), UiSelector()
waitingTime, .resourceId("$packageName:id/mozac_browser_toolbar_browser_actions"),
) ),
waitingTime,
tabsCounter().click() )
mDevice.waitForObjects( tabsCounter().click()
mDevice.findObject( assertTrue(
UiSelector().resourceId("$packageName:id/new_tab_button"), MatcherHelper.itemWithResId("$packageName:id/new_tab_button")
), .waitForExists(waitingTime),
waitingTime, )
)
break
} catch (e: AssertionError) {
if (i == RETRY_COUNT) {
throw e
} else {
mDevice.waitForIdle()
}
}
}
assertTrue(MatcherHelper.itemWithResId("$packageName:id/new_tab_button").waitForExists(waitingTime))
TabDrawerRobot().interact() TabDrawerRobot().interact()
return TabDrawerRobot.Transition() return TabDrawerRobot.Transition()

Loading…
Cancel
Save