Bug 1815650 - Fix verifyLastUsedLoginSortingOptionTest UI test

fenix/117.0
AndiAJ 11 months ago committed by mergify[bot]
parent 039ddc5f48
commit fc0f3a65fa

@ -664,7 +664,6 @@ class LoginsTest {
}
}
@Ignore("Failing, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1815650")
@Test
fun verifyLastUsedLoginSortingOptionTest() {
val firstLoginPage = TestAssetHelper.getSaveLoginAsset(mockWebServer)
@ -691,12 +690,12 @@ class LoginsTest {
clickSavedLoginsChevronIcon()
verifyLoginsSortingOptions()
clickLastUsedSortingOption()
verifySortedLogin(activityTestRule, 0, originWebsite)
verifySortedLogin(activityTestRule, 1, firstLoginPage.url.authority.toString())
verifySortedLogin(0, originWebsite)
verifySortedLogin(1, firstLoginPage.url.authority.toString())
}.goBack {
}.openSavedLogins {
verifySortedLogin(activityTestRule, 0, originWebsite)
verifySortedLogin(activityTestRule, 1, firstLoginPage.url.authority.toString())
verifySortedLogin(0, originWebsite)
verifySortedLogin(1, firstLoginPage.url.authority.toString())
}
restartApp(activityTestRule)
@ -706,8 +705,8 @@ class LoginsTest {
}.openSettings {
}.openLoginsAndPasswordSubMenu {
}.openSavedLogins {
verifySortedLogin(activityTestRule, 0, originWebsite)
verifySortedLogin(activityTestRule, 1, firstLoginPage.url.authority.toString())
verifySortedLogin(0, originWebsite)
verifySortedLogin(1, firstLoginPage.url.authority.toString())
}
}
@ -735,12 +734,12 @@ class LoginsTest {
}.openLoginsAndPasswordSubMenu {
}.openSavedLogins {
tapSetupLater()
verifySortedLogin(activityTestRule, 0, firstLoginPage.url.authority.toString())
verifySortedLogin(activityTestRule, 1, originWebsite)
verifySortedLogin(0, firstLoginPage.url.authority.toString())
verifySortedLogin(1, originWebsite)
}.goBack {
}.openSavedLogins {
verifySortedLogin(activityTestRule, 0, firstLoginPage.url.authority.toString())
verifySortedLogin(activityTestRule, 1, originWebsite)
verifySortedLogin(0, firstLoginPage.url.authority.toString())
verifySortedLogin(1, originWebsite)
}
restartApp(activityTestRule)
@ -750,8 +749,8 @@ class LoginsTest {
}.openSettings {
}.openLoginsAndPasswordSubMenu {
}.openSavedLogins {
verifySortedLogin(activityTestRule, 0, firstLoginPage.url.authority.toString())
verifySortedLogin(activityTestRule, 1, originWebsite)
verifySortedLogin(0, firstLoginPage.url.authority.toString())
verifySortedLogin(1, originWebsite)
}
}

@ -4,8 +4,6 @@
package org.mozilla.fenix.ui.robots
import androidx.appcompat.widget.AppCompatTextView
import androidx.recyclerview.widget.RecyclerView
import androidx.test.espresso.Espresso.onView
import androidx.test.espresso.Espresso.openActionBarOverflowOrOptionsMenu
import androidx.test.espresso.action.ViewActions
@ -19,10 +17,10 @@ import androidx.test.espresso.matcher.ViewMatchers.withHint
import androidx.test.espresso.matcher.ViewMatchers.withId
import androidx.test.espresso.matcher.ViewMatchers.withText
import androidx.test.uiautomator.By
import androidx.test.uiautomator.UiSelector
import androidx.test.uiautomator.Until
import org.hamcrest.CoreMatchers
import org.hamcrest.CoreMatchers.containsString
import org.junit.Assert.assertEquals
import org.junit.Assert.assertFalse
import org.junit.Assert.assertTrue
import org.mozilla.fenix.R
@ -110,12 +108,18 @@ class SettingsSubMenuLoginsAndPasswordsSavedLoginsRobot {
fun clickLastUsedSortingOption() =
itemContainingText(getStringResource(R.string.saved_logins_sort_strategy_last_used)).click()
fun verifySortedLogin(testRule: HomeActivityIntentTestRule, position: Int, loginTitle: String) {
val list = testRule.activity.findViewById<RecyclerView>(R.id.saved_logins_list)
val item = list.layoutManager?.findViewByPosition(position)
val title = item?.findViewById<AppCompatTextView>(R.id.webAddressView)
assertEquals(loginTitle, title?.text)
}
fun verifySortedLogin(position: Int, loginTitle: String) =
assertTrue(
mDevice.findObject(
UiSelector()
.className("android.view.ViewGroup")
.index(position),
).getChild(
UiSelector()
.resourceId("$packageName:id/webAddressView")
.textContains(loginTitle),
).waitForExists(waitingTime),
)
fun searchLogin(searchTerm: String) =
itemContainingText(getStringResource(R.string.preferences_passwords_saved_logins_search)).setText(searchTerm)

Loading…
Cancel
Save