For #21442 fix flaky deleteMultipleSelectionTest UI test (#21563)

Co-authored-by: AndiAJ <andiaj@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
This commit is contained in:
Andrei Joltan 2021-09-29 20:45:08 +03:00 committed by GitHub
parent ddd472d143
commit d30583e0e7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 14 additions and 3 deletions

View File

@ -227,16 +227,18 @@ class HistoryTest {
navigationToolbar {
}.enterURLAndEnterToBrowser(firstWebPage.url) {
}.openTabDrawer {
}.openNewTab {
}.submitQuery(secondWebPage.url.toString()) {
}.openNavigationToolbar {
}.enterURLAndEnterToBrowser(secondWebPage.url) {
mDevice.waitForIdle()
verifyUrl(secondWebPage.url.toString())
}.openThreeDotMenu {
}.openHistory {
verifyHistoryListExists()
historyListIdlingResource =
RecyclerViewIdlingResource(activityTestRule.activity.findViewById(R.id.history_list), 2)
IdlingRegistry.getInstance().register(historyListIdlingResource!!)
verifyHistoryItemExists(firstWebPage.url.toString())
verifyHistoryItemExists(secondWebPage.url.toString())
longTapSelectItem(firstWebPage.url)
longTapSelectItem(secondWebPage.url)
openActionBarOverflowOrOptionsMenu(activityTestRule.activity)

View File

@ -19,8 +19,10 @@ import androidx.test.uiautomator.UiSelector
import androidx.test.uiautomator.Until
import org.hamcrest.Matchers
import org.hamcrest.Matchers.allOf
import org.junit.Assert.assertTrue
import org.mozilla.fenix.R
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTime
import org.mozilla.fenix.helpers.TestHelper.waitForObjects
import org.mozilla.fenix.helpers.click
import org.mozilla.fenix.helpers.ext.waitNotNull
@ -51,6 +53,8 @@ class HistoryRobot {
assertVisitedTimeTitle()
}
fun verifyHistoryItemExists(url: String) = assertHistoryItemExists(url)
fun verifyFirstTestPageTitle(title: String) = assertTestPageTitle(title)
fun verifyTestPageUrl(expectedUrl: Uri) = assertPageUrl(expectedUrl)
@ -120,6 +124,11 @@ private fun assertEmptyHistoryView() =
private fun assertHistoryListExists() =
mDevice.findObject(UiSelector().resourceId("R.id.history_list")).waitForExists(waitingTime)
private fun assertHistoryItemExists(url: String) {
mDevice.waitForObjects(mDevice.findObject(UiSelector().textContains(url)))
assertTrue(mDevice.findObject(UiSelector().textContains(url)).waitForExists(waitingTime))
}
private fun assertVisitedTimeTitle() =
onView(withId(R.id.header_title)).check(matches(withText("Today")))