Bug 1841956 - New copy login credentials UI tests

fenix/117.0
AndiAJ 1 year ago committed by mergify[bot]
parent cff7694368
commit 2861271725

@ -27,6 +27,7 @@ import org.mozilla.fenix.helpers.TestHelper.mDevice
import org.mozilla.fenix.helpers.TestHelper.packageName
import org.mozilla.fenix.helpers.TestHelper.restartApp
import org.mozilla.fenix.helpers.TestHelper.scrollToElementByText
import org.mozilla.fenix.helpers.TestHelper.verifySnackBarText
import org.mozilla.fenix.ui.robots.browserScreen
import org.mozilla.fenix.ui.robots.clearTextFieldItem
import org.mozilla.fenix.ui.robots.clickPageObject
@ -792,4 +793,44 @@ class LoginsTest {
verifyPrefilledLoginCredentials("mozilla", "firefox", true)
}
}
@Test
fun verifyCopyUsernameTest() {
val firstLoginPage = TestAssetHelper.getSaveLoginAsset(mockWebServer)
navigationToolbar {
}.enterURLAndEnterToBrowser(firstLoginPage.url) {
clickSubmitLoginButton()
verifySaveLoginPromptIsDisplayed()
clickPageObject(itemWithText("Save"))
}.openThreeDotMenu {
}.openSettings {
}.openLoginsAndPasswordSubMenu {
}.openSavedLogins {
tapSetupLater()
viewSavedLoginDetails("test@example.com")
clickCopyUserNameButton()
verifySnackBarText("Username copied to clipboard")
}
}
@Test
fun verifyCopyPasswordTest() {
val firstLoginPage = TestAssetHelper.getSaveLoginAsset(mockWebServer)
navigationToolbar {
}.enterURLAndEnterToBrowser(firstLoginPage.url) {
clickSubmitLoginButton()
verifySaveLoginPromptIsDisplayed()
clickPageObject(itemWithText("Save"))
}.openThreeDotMenu {
}.openSettings {
}.openLoginsAndPasswordSubMenu {
}.openSavedLogins {
tapSetupLater()
viewSavedLoginDetails("test@example.com")
clickCopyPasswordButton()
verifySnackBarText("Password copied to clipboard")
}
}
}

@ -33,6 +33,7 @@ import org.mozilla.fenix.helpers.MatcherHelper.assertItemWithResIdExists
import org.mozilla.fenix.helpers.MatcherHelper.itemContainingText
import org.mozilla.fenix.helpers.MatcherHelper.itemWithResId
import org.mozilla.fenix.helpers.TestAssetHelper
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTime
import org.mozilla.fenix.helpers.TestHelper.getStringResource
import org.mozilla.fenix.helpers.TestHelper.mDevice
import org.mozilla.fenix.helpers.TestHelper.packageName
@ -179,6 +180,18 @@ class SettingsSubMenuLoginsAndPasswordsSavedLoginsRobot {
fun clickGoBackButton() = goBackButton().click()
fun clickCopyUserNameButton() =
itemWithResId("$packageName:id/copyUsername").also {
it.waitForExists(waitingTime)
it.click()
}
fun clickCopyPasswordButton() =
itemWithResId("$packageName:id/copyPassword").also {
it.waitForExists(waitingTime)
it.click()
}
class Transition {
fun goBack(interact: SettingsSubMenuLoginsAndPasswordRobot.() -> Unit): SettingsSubMenuLoginsAndPasswordRobot.Transition {
goBackButton().perform(ViewActions.click())

Loading…
Cancel
Save