Bug 1814032 - Retry attempts for address autofill in UI tests

fenix/113.0
oana.horvath 1 year ago committed by Ryan VanderMeulen
parent c598560546
commit 37f64e9374

@ -536,8 +536,23 @@ class BrowserRobot {
}
fun clickSelectAddressButton() {
selectAddressButton.waitForExists(waitingTime)
selectAddressButton.clickAndWaitForNewWindow(waitingTime)
for (i in 1..RETRY_COUNT) {
try {
assertTrue(selectAddressButton.waitForExists(waitingTime))
selectAddressButton.clickAndWaitForNewWindow(waitingTime)
break
} catch (e: AssertionError) {
// Retrying, in case we hit https://bugzilla.mozilla.org/show_bug.cgi?id=1816869
// This should be removed when the bug is fixed.
if (i == RETRY_COUNT) {
throw e
} else {
clickPageObject(webPageItemWithResourceId("city"))
clickPageObject(webPageItemWithResourceId("country"))
}
}
}
}
fun verifySelectAddressButtonExists(exists: Boolean) = assertItemWithResIdExists(selectAddressButton, exists = exists)

@ -407,11 +407,22 @@ class SettingsSubMenuAutofillRobot {
private val autofillToolbarTitle = itemContainingText(getStringResource(R.string.preferences_autofill))
private val addressesSectionTitle = itemContainingText(getStringResource(R.string.preferences_addresses))
private val manageAddressesToolbarTitle = itemContainingText(getStringResource(R.string.addresses_manage_addresses))
private val manageAddressesToolbarTitle =
mDevice.findObject(
UiSelector()
.resourceId("$packageName:id/navigationToolbar")
.childSelector(UiSelector().text(getStringResource(R.string.addresses_manage_addresses))),
)
private val saveAndAutofillAddressesOption = itemContainingText(getStringResource(R.string.preferences_addresses_save_and_autofill_addresses))
private val saveAndAutofillAddressesSummary = itemContainingText(getStringResource(R.string.preferences_addresses_save_and_autofill_addresses_summary))
private val addAddressButton = itemContainingText(getStringResource(R.string.preferences_addresses_add_address))
private val manageAddressesButton = itemContainingText(getStringResource(R.string.preferences_addresses_manage_addresses))
private val manageAddressesButton =
mDevice.findObject(
UiSelector()
.resourceId("android:id/title")
.text(getStringResource(R.string.preferences_addresses_manage_addresses)),
)
private val addAddressToolbarTitle = itemContainingText(getStringResource(R.string.addresses_add_address))
private val editAddressToolbarTitle = itemContainingText(getStringResource(R.string.addresses_edit_address))
private val toolbarCheckmarkButton = itemWithResId("$packageName:id/save_address_button")

Loading…
Cancel
Save