use url fixture in setup_nextcloud_admin_session, cleanup

This commit is contained in:
Daniel 2023-12-04 19:57:01 +01:00
parent 5220336eff
commit 2958b95c65

View file

@ -1,6 +1,7 @@
from playwright.sync_api import Page, expect from playwright.sync_api import Page, expect
from src.dir_manager import DirManager from src.dir_manager import DirManager
from src.utils import BaseUrl
# url dashboard # url dashboard
# https://files.test.dev.local-it.cloud/apps/dashboard/ # https://files.test.dev.local-it.cloud/apps/dashboard/
@ -8,47 +9,13 @@ from src.dir_manager import DirManager
# https://files.test.dev.local-it.cloud/apps/files/ # https://files.test.dev.local-it.cloud/apps/files/
def setup_nextcloud_admin_session(authentik_admin_page: Page, DIR: DirManager): def setup_nextcloud_admin_session(authentik_admin_page: Page, DIR: DirManager, URL: BaseUrl):
"""visit nextcloud from authentik with admin_session to create wordpress_admin_session""" """visit nextcloud from authentik with admin_session to create wordpress_admin_session"""
with authentik_admin_page.expect_popup() as event_context: with authentik_admin_page.expect_popup() as event_context:
authentik_admin_page.get_by_role("link", name="Nextcloud").click() authentik_admin_page.get_by_role("link", name="Nextcloud").click()
page_nextcloud = event_context.value page_nextcloud = event_context.value
context = page_nextcloud.context context = page_nextcloud.context
context.storage_state(path=DIR.STATES / "nextcloud_admin_state.json") page_nextcloud.goto(URL.get("/apps/files"))
page_nextcloud.goto("/apps/files")
expect(page_nextcloud.get_by_role("link", name="Name")).to_be_visible() expect(page_nextcloud.get_by_role("link", name="Name")).to_be_visible()
context.storage_state(path=DIR.STATES / "nextcloud_admin_state.json")
# @pytest.fixture(scope="session", autouse=True)
# def nc_login(browser: Browser):
# """Nextcloud Login"""
# context = setup_context(browser, f"{STATES}/user_state.json")
# page = context.new_page()
# page.goto(CONFIG["domain"])
# with page.expect_popup() as nextcloud_info:
# link = page.get_by_role("link", name="Nextcloud")
# CONFIG["nc_domain"] = link.get_attribute("href")
# link.click()
# nextcloud = nextcloud_info.value
# check_for(nextcloud.get_by_role("link", name="Name"))
# if nextcloud.query_selector(".close-icon"):
# close_button = nextcloud.get_by_role("button", name="Close modal")
# close_button.click()
# expect(close_button).to_be_hidden()
# nextcloud.wait_for_timeout(2000)
# context.storage_state(path=f"{STATES}/nc_user_state.json")
# context.tracing.stop(path=f"{RECORDS}/nextcloud_login_user.zip")
# context.close()
# @pytest.fixture
# def nc_session(browser: Browser):
# """Reuse Nextcloud User Session"""
# context = setup_context(browser, f"{STATES}/nc_user_state.json")
# page = context.new_page()
# page.goto(CONFIG["nc_domain"])
# if page.query_selector(".close-icon"):
# page.get_by_role("button", name="Close modal").click()
# yield context, page
# context.close()