summaryrefslogtreecommitdiffstats
path: root/tests/acceptance
diff options
context:
space:
mode:
authorDaniel Calviño Sánchez <danxuliu@gmail.com>2021-03-05 21:33:29 +0100
committerDaniel Calviño Sánchez <danxuliu@gmail.com>2021-03-06 01:34:42 +0100
commit6d145ea54a4a1a9e83f2c024aa639d92dcc4c39b (patch)
treeca3b1f25c428874d11e2081c00dc764e6bedf338 /tests/acceptance
parent4c23d2427751bba152d9806d5ae6a958503a2e53 (diff)
downloadnextcloud-server-6d145ea54a4a1a9e83f2c024aa639d92dcc4c39b.tar.gz
nextcloud-server-6d145ea54a4a1a9e83f2c024aa639d92dcc4c39b.zip
Add locator for apps list
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Diffstat (limited to 'tests/acceptance')
-rw-r--r--tests/acceptance/features/bootstrap/AppsManagementContext.php20
1 files changed, 16 insertions, 4 deletions
diff --git a/tests/acceptance/features/bootstrap/AppsManagementContext.php b/tests/acceptance/features/bootstrap/AppsManagementContext.php
index 2b53ee3222b..449030e81a8 100644
--- a/tests/acceptance/features/bootstrap/AppsManagementContext.php
+++ b/tests/acceptance/features/bootstrap/AppsManagementContext.php
@@ -31,6 +31,14 @@ class AppsManagementContext implements Context, ActorAwareInterface {
/**
* @return Locator
*/
+ public static function appsList() {
+ return Locator::forThe()->xpath("//main[@id='app-content' or contains(@class, 'app-content')]//div[@id='apps-list']")->
+ describedAs("Apps list in Apps Management");
+ }
+
+ /**
+ * @return Locator
+ */
public static function enableButtonForApp($app) {
return Locator::forThe()->button("Enable")->
descendantOf(self::rowForApp($app))->
@@ -59,7 +67,8 @@ class AppsManagementContext implements Context, ActorAwareInterface {
* @return Locator
*/
public static function bundleButton($bundle) {
- return Locator::forThe()->xpath("//main[@id='app-content' or contains(@class, 'app-content')]//div[@class='apps-header']/h2[normalize-space() = '$bundle']/input")->
+ return Locator::forThe()->xpath("//div[@class='apps-header']/h2[normalize-space() = '$bundle']/input")->
+ descendantOf(self::appsList())->
describedAs("Button to enable / disable bundles");
}
@@ -67,7 +76,8 @@ class AppsManagementContext implements Context, ActorAwareInterface {
* @return Locator
*/
public static function rowForApp($app) {
- return Locator::forThe()->xpath("//main[@id='app-content' or contains(@class, 'app-content')]//div[@class='app-name'][normalize-space() = '$app']/..")->
+ return Locator::forThe()->xpath("//div[@class='app-name'][normalize-space() = '$app']/..")->
+ descendantOf(self::appsList())->
describedAs("Row for app $app in Apps Management");
}
@@ -75,7 +85,8 @@ class AppsManagementContext implements Context, ActorAwareInterface {
* @return Locator
*/
public static function emptyAppList() {
- return Locator::forThe()->xpath("//main[@id='app-content' or contains(@class, 'app-content')]//div[@id='apps-list-empty']")->
+ return Locator::forThe()->xpath("//div[@id='apps-list-empty']")->
+ descendantOf(self::appsList())->
describedAs("Empty apps list view");
}
@@ -83,7 +94,8 @@ class AppsManagementContext implements Context, ActorAwareInterface {
* @return Locator
*/
public static function appEntries() {
- return Locator::forThe()->xpath("//main[@id='app-content' or contains(@class, 'app-content')]//div[@class='section']")->
+ return Locator::forThe()->xpath("//div[@class='section']")->
+ descendantOf(self::appsList())->
describedAs("Entries in apps list");
}