[fenix] For https://github.com/mozilla-mobile/fenix/issues/26286 new selectStoriesByTopicItemTest UI test

pull/600/head
AndiAJ 2 years ago committed by mergify[bot]
parent 2167ea3b60
commit 9bbdae48f5

@ -277,6 +277,23 @@ class HomeScreenTest {
}
}
@Test
fun selectStoriesByTopicItemTest() {
activityTestRule.activityRule.applySettingsExceptions {
it.isRecentTabsFeatureEnabled = false
it.isRecentlyVisitedFeatureEnabled = false
}
homeScreen {
}.dismissOnboarding()
homeScreen {
verifyStoriesByTopicItemState(activityTestRule, false, 1)
clickStoriesByTopicItem(activityTestRule, 1)
verifyStoriesByTopicItemState(activityTestRule, true, 1)
}
}
@Test
fun verifyCustomizeHomepageTest() {
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)

@ -10,6 +10,8 @@ import android.graphics.Bitmap
import android.widget.EditText
import androidx.compose.ui.test.assert
import androidx.compose.ui.test.assertIsDisplayed
import androidx.compose.ui.test.assertIsNotSelected
import androidx.compose.ui.test.assertIsSelected
import androidx.compose.ui.test.hasTestTag
import androidx.compose.ui.test.hasText
import androidx.compose.ui.test.junit4.ComposeTestRule
@ -333,6 +335,21 @@ class HomeScreenRobot {
fun verifyStoriesByTopicItems() =
assertTrue(mDevice.findObject(UiSelector().resourceId("pocket.categories")).childCount > 1)
fun verifyStoriesByTopicItemState(composeTestRule: ComposeTestRule, isSelected: Boolean, position: Int) {
homeScreenList().scrollIntoView(mDevice.findObject(UiSelector().resourceId("pocket.header")))
if (isSelected) {
composeTestRule.onNodeWithTag("pocket.categories").assertIsDisplayed()
storyByTopicItem(composeTestRule, position).assertIsSelected()
} else {
composeTestRule.onNodeWithTag("pocket.categories").assertIsDisplayed()
storyByTopicItem(composeTestRule, position).assertIsNotSelected()
}
}
fun clickStoriesByTopicItem(composeTestRule: ComposeTestRule, position: Int) =
storyByTopicItem(composeTestRule, position).performClick()
fun verifyPoweredByPocket(rule: ComposeTestRule) {
homeScreenList().scrollIntoView(mDevice.findObject(UiSelector().resourceId("pocket.header")))
rule.onNodeWithTag("pocket.header.title", true).assertIsDisplayed()
@ -1087,6 +1104,9 @@ private fun sponsoredShortcut(sponsoredShortcutTitle: String) =
.textContains(sponsoredShortcutTitle),
)
private fun storyByTopicItem(composeTestRule: ComposeTestRule, position: Int) =
composeTestRule.onNodeWithTag("pocket.categories").onChildAt(position - 1)
val deleteFromHistory =
onView(
allOf(

Loading…
Cancel
Save