1
0
Fork 0

Add logins to UI test

master
Emily Kager 2019-11-14 15:01:29 -08:00 committed by Emily Kager
parent d85ed27a3d
commit 1c26851dea
2 changed files with 52 additions and 9 deletions

View File

@ -53,6 +53,8 @@ class SettingsPrivacyTest {
// Verify item: "Tracking Protection" and default value: "On" // Verify item: "Tracking Protection" and default value: "On"
// Verify item: "Tracking Protection" and default value: "On" // Verify item: "Tracking Protection" and default value: "On"
// Verify item: "Logins"
// Verify item: "Site Permissions" // Verify item: "Site Permissions"
// Click on: "Site permissions" // Click on: "Site permissions"
// Verify sub-menu items... // Verify sub-menu items...
@ -92,6 +94,8 @@ class SettingsPrivacyTest {
verifyPrivacyHeading() verifyPrivacyHeading()
verifyEnhancedTrackingProtectionButton() verifyEnhancedTrackingProtectionButton()
verifyEnhancedTrackingProtectionValue() verifyEnhancedTrackingProtectionValue()
// Logins
verifyLoginsButton()
// drill down to submenu // drill down to submenu
verifyAddPrivateBrowsingShortcutButton() verifyAddPrivateBrowsingShortcutButton()
verifySitePermissionsButton() verifySitePermissionsButton()

View File

@ -28,6 +28,7 @@ class SettingsRobot {
// BASICS SECTION // BASICS SECTION
fun verifyBasicsHeading() = assertBasicsHeading() fun verifyBasicsHeading() = assertBasicsHeading()
fun verifySearchEngineButton() = assertSearchEngineButton() fun verifySearchEngineButton() = assertSearchEngineButton()
fun verifyThemeButton() = assertThemeButton() fun verifyThemeButton() = assertThemeButton()
fun verifyThemeSelected() = assertThemeSelected() fun verifyThemeSelected() = assertThemeSelected()
@ -36,7 +37,9 @@ class SettingsRobot {
// PRIVACY SECTION // PRIVACY SECTION
fun verifyPrivacyHeading() = assertPrivacyHeading() fun verifyPrivacyHeading() = assertPrivacyHeading()
fun verifyEnhancedTrackingProtectionButton() = assertEnhancedTrackingProtectionButton() fun verifyEnhancedTrackingProtectionButton() = assertEnhancedTrackingProtectionButton()
fun verifyLoginsButton() = assertLoginsButton()
fun verifyEnhancedTrackingProtectionValue() = assertEnhancedTrackingProtectionValue() fun verifyEnhancedTrackingProtectionValue() = assertEnhancedTrackingProtectionValue()
fun verifyAddPrivateBrowsingShortcutButton() = assertAddPrivateBrowsingShortcutButton() fun verifyAddPrivateBrowsingShortcutButton() = assertAddPrivateBrowsingShortcutButton()
fun verifySitePermissionsButton() = assertSitePermissionsButton() fun verifySitePermissionsButton() = assertSitePermissionsButton()
@ -49,10 +52,12 @@ class SettingsRobot {
// DEVELOPER TOOLS SECTION // DEVELOPER TOOLS SECTION
fun verifyDeveloperToolsHeading() = assertDeveloperToolsHeading() fun verifyDeveloperToolsHeading() = assertDeveloperToolsHeading()
fun verifyRemoteDebug() = assertRemoteDebug() fun verifyRemoteDebug() = assertRemoteDebug()
// ABOUT SECTION // ABOUT SECTION
fun verifyAboutHeading() = assertAboutHeading() fun verifyAboutHeading() = assertAboutHeading()
fun verifyHelp() = assertHelp() fun verifyHelp() = assertHelp()
fun verifyRateOnGooglePlay() = assertRateOnGooglePlay() fun verifyRateOnGooglePlay() = assertRateOnGooglePlay()
fun verifyAboutFirefoxPreview() = assertAboutFirefoxPreview() fun verifyAboutFirefoxPreview() = assertAboutFirefoxPreview()
@ -118,18 +123,24 @@ private fun assertSettingsView() {
// BASICS SECTION // BASICS SECTION
private fun assertBasicsHeading() = onView(ViewMatchers.withText("Basics")) private fun assertBasicsHeading() = onView(ViewMatchers.withText("Basics"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
private fun assertSearchEngineButton() { private fun assertSearchEngineButton() {
mDevice.wait(Until.findObject(By.text("Search")), waitingTime) mDevice.wait(Until.findObject(By.text("Search")), waitingTime)
onView(ViewMatchers.withText("Search")) onView(ViewMatchers.withText("Search"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
} }
private fun assertThemeButton() = onView(ViewMatchers.withText("Theme")) private fun assertThemeButton() = onView(ViewMatchers.withText("Theme"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
private fun assertThemeSelected() = onView(ViewMatchers.withText("Light")) private fun assertThemeSelected() = onView(ViewMatchers.withText("Light"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
private fun assertAccessibilityButton() = onView(ViewMatchers.withText("Accessibility")) private fun assertAccessibilityButton() = onView(ViewMatchers.withText("Accessibility"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
private fun assertSetAsDefaultBrowserButton() = onView(ViewMatchers.withText("Set as default browser"))
private fun assertSetAsDefaultBrowserButton() =
onView(ViewMatchers.withText("Set as default browser"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
// PRIVACY SECTION // PRIVACY SECTION
@ -137,28 +148,51 @@ private fun assertPrivacyHeading() {
onView(ViewMatchers.withText("Privacy")) onView(ViewMatchers.withText("Privacy"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
} }
private fun assertEnhancedTrackingProtectionButton() = onView(ViewMatchers.withText("Enhanced Tracking Protection"))
private fun assertEnhancedTrackingProtectionButton() =
onView(ViewMatchers.withText("Enhanced Tracking Protection"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
private fun assertEnhancedTrackingProtectionValue() = onView(ViewMatchers.withText("On")) private fun assertEnhancedTrackingProtectionValue() = onView(ViewMatchers.withText("On"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
private fun assertLoginsButton() {
TestHelper.scrollToElementByText("Passwords")
onView(ViewMatchers.withText("Passwords"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
}
private fun assertAddPrivateBrowsingShortcutButton() { private fun assertAddPrivateBrowsingShortcutButton() {
TestHelper.scrollToElementByText("Add private browsing shortcut")
mDevice.wait(Until.findObject(By.text("Add private browsing shortcut")), waitingTime) mDevice.wait(Until.findObject(By.text("Add private browsing shortcut")), waitingTime)
onView(ViewMatchers.withText("Add private browsing shortcut")) onView(ViewMatchers.withText("Add private browsing shortcut"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
} }
private fun assertSitePermissionsButton() { private fun assertSitePermissionsButton() {
TestHelper.scrollToElementByText("Site permissions") TestHelper.scrollToElementByText("Site permissions")
onView(ViewMatchers.withText("Site permissions")) onView(ViewMatchers.withText("Site permissions"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
} }
private fun assertDeleteBrowsingDataButton() = onView(ViewMatchers.withText("Delete browsing data"))
private fun assertDeleteBrowsingDataButton() {
TestHelper.scrollToElementByText("Delete browsing data")
onView(ViewMatchers.withText("Delete browsing data"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
private fun assertDeleteBrowsingDataOnQuitButton() = onView(ViewMatchers.withText("Delete browsing data on quit")) }
private fun assertDeleteBrowsingDataOnQuitButton() {
TestHelper.scrollToElementByText("Delete browsing data on quit")
onView(ViewMatchers.withText("Delete browsing data on quit"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
}
private fun assertDataCollectionButton() = onView(ViewMatchers.withText("Data collection")) private fun assertDataCollectionButton() = onView(ViewMatchers.withText("Data collection"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
private fun assertPrivacyNoticeButton() = onView(ViewMatchers.withText("Privacy notice")) private fun assertPrivacyNoticeButton() = onView(ViewMatchers.withText("Privacy notice"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
private fun assertLeakCanaryButton() = onView(ViewMatchers.withText("LeakCanary")) private fun assertLeakCanaryButton() = onView(ViewMatchers.withText("LeakCanary"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
@ -168,6 +202,7 @@ private fun assertDeveloperToolsHeading() {
onView(ViewMatchers.withText("Developer tools")) onView(ViewMatchers.withText("Developer tools"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
} }
private fun assertRemoteDebug() = onView(ViewMatchers.withText("Remote debugging via USB")) private fun assertRemoteDebug() = onView(ViewMatchers.withText("Remote debugging via USB"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
@ -177,20 +212,24 @@ private fun assertAboutHeading() {
onView(ViewMatchers.withText("About")) onView(ViewMatchers.withText("About"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
} }
private fun assertHelp() { private fun assertHelp() {
TestHelper.scrollToElementByText("About Firefox Preview") TestHelper.scrollToElementByText("About Firefox Preview")
onView(ViewMatchers.withText("Help")) onView(ViewMatchers.withText("Help"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
} }
private fun assertRateOnGooglePlay() { private fun assertRateOnGooglePlay() {
TestHelper.scrollToElementByText("About Firefox Preview") TestHelper.scrollToElementByText("About Firefox Preview")
onView(ViewMatchers.withText("Rate on Google Play")) onView(ViewMatchers.withText("Rate on Google Play"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
} }
private fun assertAboutFirefoxPreview() { private fun assertAboutFirefoxPreview() {
TestHelper.scrollToElementByText("About Firefox Preview") TestHelper.scrollToElementByText("About Firefox Preview")
onView(ViewMatchers.withText("About Firefox Preview")) onView(ViewMatchers.withText("About Firefox Preview"))
.check(matches(withEffectiveVisibility(Visibility.VISIBLE))) .check(matches(withEffectiveVisibility(Visibility.VISIBLE)))
} }
private fun goBackButton() = onView(CoreMatchers.allOf(ViewMatchers.withContentDescription("Navigate up"))) private fun goBackButton() =
onView(CoreMatchers.allOf(ViewMatchers.withContentDescription("Navigate up")))