New UI test coverage for Pull to refresh preference
This commit is contained in:
parent
2c1622650d
commit
49ac79df65
|
@ -82,4 +82,16 @@ class SettingsCustomizeTest {
|
|||
verifyUrl(secondWebPage.url.toString())
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun pullToRefreshPreferenceTest() {
|
||||
homeScreen {
|
||||
}.openThreeDotMenu {
|
||||
}.openSettings {
|
||||
}.openCustomizeSubMenu {
|
||||
verifyPullToRefreshGesturePrefState(isEnabled = true)
|
||||
clickPullToRefreshToggle()
|
||||
verifyPullToRefreshGesturePrefState(isEnabled = false)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -48,6 +48,8 @@ class SettingsSubMenuCustomizeRobot {
|
|||
|
||||
fun clickSwipeToolbarToSwitchTabToggle() = swipeToolbarToggle.click()
|
||||
|
||||
fun clickPullToRefreshToggle() = pullToRefreshToggle.click()
|
||||
|
||||
fun verifySwipeToolbarGesturePrefState(isEnabled: Boolean) {
|
||||
swipeToolbarToggle
|
||||
.check(
|
||||
|
@ -66,6 +68,24 @@ class SettingsSubMenuCustomizeRobot {
|
|||
)
|
||||
}
|
||||
|
||||
fun verifyPullToRefreshGesturePrefState(isEnabled: Boolean) {
|
||||
pullToRefreshToggle
|
||||
.check(
|
||||
matches(
|
||||
hasCousin(
|
||||
allOf(
|
||||
withClassName(endsWith("Switch")),
|
||||
if (isEnabled) {
|
||||
isChecked()
|
||||
} else {
|
||||
isNotChecked()
|
||||
},
|
||||
),
|
||||
),
|
||||
),
|
||||
)
|
||||
}
|
||||
|
||||
class Transition {
|
||||
fun goBack(interact: SettingsRobot.() -> Unit): SettingsRobot.Transition {
|
||||
mDevice.waitForIdle()
|
||||
|
@ -103,5 +123,8 @@ private fun deviceModeToggle(): ViewInteraction {
|
|||
private val swipeToolbarToggle =
|
||||
onView(withText(getStringResource(R.string.preference_gestures_swipe_toolbar_switch_tabs)))
|
||||
|
||||
private val pullToRefreshToggle =
|
||||
onView(withText(getStringResource(R.string.preference_gestures_website_pull_to_refresh)))
|
||||
|
||||
private fun goBackButton() =
|
||||
onView(allOf(ViewMatchers.withContentDescription("Navigate up")))
|
||||
|
|
Loading…
Reference in New Issue