Bug 1818183 - Fix shortcut not showing up in top sites UI test

fenix/124.1.0
oana.horvath 4 months ago committed by mergify[bot]
parent bc729a894e
commit 0251620c54

@ -66,8 +66,12 @@ class ComposeTopSitesTest {
fun addAWebsiteAsATopSiteTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreenWithComposeTopSites(composeTestRule) {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(true)
@ -84,8 +88,12 @@ class ComposeTopSitesTest {
fun openTopSiteInANewTabTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreenWithComposeTopSites(composeTestRule) {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(true)
@ -112,8 +120,12 @@ class ComposeTopSitesTest {
fun openTopSiteInANewPrivateTabTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreenWithComposeTopSites(composeTestRule) {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(true)
@ -135,6 +147,9 @@ class ComposeTopSitesTest {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
val newPageTitle = generateRandomString(5)
homeScreenWithComposeTopSites(composeTestRule) {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
waitForPageToLoad()
@ -159,8 +174,12 @@ class ComposeTopSitesTest {
fun removeTopSiteUsingMenuButtonTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreenWithComposeTopSites(composeTestRule) {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(true)
@ -186,8 +205,12 @@ class ComposeTopSitesTest {
fun removeTopSiteFromMainMenuTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreenWithComposeTopSites(composeTestRule) {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(true)

@ -61,8 +61,12 @@ class TopSitesTest {
fun addAWebsiteAsATopSiteTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreen {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(shouldExist = true)
@ -79,8 +83,12 @@ class TopSitesTest {
fun openTopSiteInANewTabTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreen {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(shouldExist = true)
@ -107,8 +115,12 @@ class TopSitesTest {
fun openTopSiteInANewPrivateTabTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreen {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(shouldExist = true)
@ -130,6 +142,9 @@ class TopSitesTest {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
val newPageTitle = generateRandomString(5)
homeScreen {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
waitForPageToLoad()
@ -154,8 +169,12 @@ class TopSitesTest {
fun removeTopSiteUsingMenuButtonTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreen {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(shouldExist = true)
@ -181,8 +200,12 @@ class TopSitesTest {
fun removeTopSiteFromMainMenuTest() {
val defaultWebPage = getGenericAsset(mockWebServer, 1)
homeScreen {
verifyExistingTopSitesList()
}
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
verifyPageContent(defaultWebPage.content)
}.openThreeDotMenu {
expandMenu()
verifyAddToShortcutsButton(shouldExist = true)

@ -16,14 +16,12 @@ import androidx.compose.ui.test.onFirst
import androidx.compose.ui.test.performClick
import androidx.compose.ui.test.performScrollTo
import androidx.compose.ui.test.performTouchInput
import androidx.test.uiautomator.UiSelector
import org.mozilla.fenix.helpers.HomeActivityComposeTestRule
import org.mozilla.fenix.helpers.MatcherHelper.itemContainingText
import org.mozilla.fenix.helpers.MatcherHelper.itemWithResId
import org.mozilla.fenix.helpers.MatcherHelper.itemWithResIdContainingText
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTime
import org.mozilla.fenix.helpers.TestAssetHelper.waitingTimeShort
import org.mozilla.fenix.helpers.TestHelper.mDevice
import org.mozilla.fenix.helpers.TestHelper.packageName
import org.mozilla.fenix.home.topsites.TopSitesTestTag
@ -34,13 +32,13 @@ class ComposeTopSitesRobot(private val composeTestRule: HomeActivityComposeTestR
@OptIn(ExperimentalTestApi::class)
fun verifyExistingTopSitesList() {
composeTestRule.waitUntilExactlyOneExists(hasTestTag(TopSitesTestTag.topSites), timeoutMillis = waitingTime)
composeTestRule.waitUntilAtLeastOneExists(hasTestTag(TopSitesTestTag.topSites), timeoutMillis = waitingTime)
}
@OptIn(ExperimentalTestApi::class)
fun verifyExistingTopSiteItem(vararg titles: String) {
titles.forEach { title ->
mDevice.findObject(UiSelector().textContains(title)).waitForExists(waitingTimeShort)
composeTestRule.waitUntilAtLeastOneExists(hasText(title), timeoutMillis = waitingTime)
composeTestRule.topSiteItem(title).assertExists()
}
}

@ -215,7 +215,9 @@ class HomeScreenRobot {
fun verifyCommonMythsLink() =
assertUIObjectExists(itemContainingText(getStringResource(R.string.private_browsing_common_myths)))
fun verifyExistingTopSitesList() = assertExistingTopSitesList()
fun verifyExistingTopSitesList() =
assertUIObjectExists(itemWithResId("$packageName:id/top_sites_list"))
fun verifyNotExistingTopSitesList(title: String) = assertNotExistingTopSitesList(title)
fun verifySponsoredShortcutDoesNotExist(sponsoredShortcutTitle: String, position: Int) =
assertUIObjectExists(
@ -846,9 +848,6 @@ private fun assertHomeComponent() =
private fun threeDotButton() = onView(allOf(withId(R.id.menuButton)))
private fun assertExistingTopSitesList() =
assertUIObjectExists(itemWithResId("$packageName:id/top_sites_list"))
private fun assertExistingTopSitesTabs(title: String) {
mDevice.findObject(
UiSelector()

Loading…
Cancel
Save