* make it so that the actual tests can be moved anywhere, for example in abra recipe repos -> major refactoring with pytest test discovery magic * create RUNNER_DICT dynamically with importlib -> none of the tests are hardcoded, more tests can be added by placing a folder * autoload fixtures with pytest plugins * add URL fixture to navigate on web pages. Includes url parser based on python urllib to generate correct links * fix nextcloud setups and tests * add email groundwork with imbox Reviewed-on: local-it-infrastructure/e2e_tests#7 Co-authored-by: Daniel <d.brummerloh@gmail.com> Co-committed-by: Daniel <d.brummerloh@gmail.com>
17 lines
778 B
Python
17 lines
778 B
Python
import os
|
|
|
|
from playwright.sync_api import Page
|
|
|
|
|
|
def delete_nextcloud_user(authentik_admin_page: Page):
|
|
"""Delete Nextcloud User"""
|
|
with authentik_admin_page.expect_popup() as nextcloud_info:
|
|
authentik_admin_page.get_by_role("link", name="Nextcloud").click()
|
|
nextcloud = nextcloud_info.value
|
|
nextcloud.get_by_role("link", name="Open settings menu").click()
|
|
nextcloud.get_by_role("link", name="Users").click()
|
|
nextcloud.locator("#app-content div").filter(has_text=os.environ["NEXTCLOUD_USER"]).get_by_role(
|
|
"button", name="Toggle user actions menu"
|
|
).click()
|
|
nextcloud.get_by_role("button", name="Delete user").click()
|
|
nextcloud.get_by_role("button", name=f"Delete authentik-{os.environ["NEXTCLOUD_USER"]}'s account").click()
|