Unify deletion confirmation to use web dialog for share deletion as well
This commit is contained in:
@@ -41,18 +41,18 @@ def test_delete_wrong_confirmation(page: Page, radicale_server: str) -> None:
|
||||
page.click('article:not(.hidden) a[data-name="delete"]', force=True)
|
||||
|
||||
# Input wrong confirmation
|
||||
page.fill('#deletecollectionscene input[data-name="confirmationtxt"]', "foo")
|
||||
page.click('#deletecollectionscene button[data-name="delete"]')
|
||||
page.fill('#deleteconfirmationscene input[data-name="confirmationtxt"]', "foo")
|
||||
page.click('#deleteconfirmationscene button[data-name="delete"]')
|
||||
|
||||
# Check for error message
|
||||
error_locator = page.locator('#deletecollectionscene span[data-name="error"]')
|
||||
error_locator = page.locator('#deleteconfirmationscene span[data-name="error"]')
|
||||
expect(error_locator).to_be_visible()
|
||||
expect(error_locator).to_contain_text(
|
||||
"Please type DELETE in the confirmation field"
|
||||
)
|
||||
|
||||
# Scene should still be visible
|
||||
expect(page.locator("#deletecollectionscene")).to_be_visible()
|
||||
expect(page.locator("#deleteconfirmationscene")).to_be_visible()
|
||||
|
||||
|
||||
def test_delete_correct_confirmation(page: Page, radicale_server: str) -> None:
|
||||
@@ -67,11 +67,11 @@ def test_delete_correct_confirmation(page: Page, radicale_server: str) -> None:
|
||||
page.click('article:not(.hidden) a[data-name="delete"]', force=True)
|
||||
|
||||
# Input correct confirmation
|
||||
page.fill('#deletecollectionscene input[data-name="confirmationtxt"]', "DELETE")
|
||||
page.click('#deletecollectionscene button[data-name="delete"]')
|
||||
page.fill('#deleteconfirmationscene input[data-name="confirmationtxt"]', "DELETE")
|
||||
page.click('#deleteconfirmationscene button[data-name="delete"]')
|
||||
|
||||
# Verify collection is gone
|
||||
expect(page.locator("article:not(.hidden)")).to_have_count(0)
|
||||
|
||||
# Scene should be hidden
|
||||
expect(page.locator("#deletecollectionscene")).to_be_hidden()
|
||||
expect(page.locator("#deleteconfirmationscene")).to_be_hidden()
|
||||
|
||||
@@ -68,10 +68,10 @@ def test_navigation_delete_collection_cancel(page: Page, radicale_server: str) -
|
||||
|
||||
page.hover("article:not(.hidden)")
|
||||
page.click('article:not(.hidden) a[data-name="delete"]', force=True)
|
||||
expect(page.locator("#deletecollectionscene")).to_be_visible()
|
||||
expect(page.locator("#deleteconfirmationscene")).to_be_visible()
|
||||
|
||||
page.click('#deletecollectionscene button[data-name="cancel"]')
|
||||
expect(page.locator("#deletecollectionscene")).to_be_hidden()
|
||||
page.click('#deleteconfirmationscene button[data-name="cancel"]')
|
||||
expect(page.locator("#deleteconfirmationscene")).to_be_hidden()
|
||||
expect(page.locator("#collectionsscene")).to_be_visible()
|
||||
|
||||
|
||||
@@ -82,18 +82,18 @@ def test_navigation_delete_collection_confirm(page: Page, radicale_server: str)
|
||||
|
||||
page.hover("article:not(.hidden)")
|
||||
page.click('article:not(.hidden) a[data-name="delete"]', force=True)
|
||||
expect(page.locator("#deletecollectionscene")).to_be_visible()
|
||||
expect(page.locator("#deleteconfirmationscene")).to_be_visible()
|
||||
|
||||
# We need to fill the confirmation text
|
||||
confirmation_text = page.locator(
|
||||
"#deletecollectionscene [data-name='deleteconfirmationtext']"
|
||||
"#deleteconfirmationscene [data-name='deleteconfirmationtext']"
|
||||
).inner_text()
|
||||
page.locator("#deletecollectionscene input[data-name='confirmationtxt']").fill(
|
||||
page.locator("#deleteconfirmationscene input[data-name='confirmationtxt']").fill(
|
||||
confirmation_text
|
||||
)
|
||||
page.click('#deletecollectionscene button[data-name="delete"]')
|
||||
page.click('#deleteconfirmationscene button[data-name="delete"]')
|
||||
|
||||
expect(page.locator("#deletecollectionscene")).to_be_hidden()
|
||||
expect(page.locator("#deleteconfirmationscene")).to_be_hidden()
|
||||
expect(page.locator("#collectionsscene")).to_be_visible()
|
||||
expect(page.locator("article:not(.hidden)")).to_have_count(0)
|
||||
|
||||
|
||||
@@ -52,8 +52,8 @@ def test_create_and_delete_share_by_key(page: Page, radicale_server: str) -> Non
|
||||
"tr[data-name='sharetokenrowtemplate']:not(.hidden) span[data-name='ro']"
|
||||
)
|
||||
).to_be_visible()
|
||||
page.once("dialog", lambda dialog: dialog.accept())
|
||||
page.click('tr:not(.hidden) button[data-name="delete"]', strict=True)
|
||||
page.click('#deleteconfirmationscene button[data-name="delete"]')
|
||||
expect(
|
||||
page.locator("tr[data-name='sharetokenrowtemplate']:not(.hidden)")
|
||||
).to_have_count(0)
|
||||
@@ -68,8 +68,8 @@ def test_create_and_delete_share_by_key(page: Page, radicale_server: str) -> Non
|
||||
"tr[data-name='sharetokenrowtemplate']:not(.hidden) span[data-name='rw']"
|
||||
)
|
||||
).to_be_visible()
|
||||
page.once("dialog", lambda dialog: dialog.accept())
|
||||
page.click('tr:not(.hidden) button[data-name="delete"]', strict=True)
|
||||
page.click('#deleteconfirmationscene button[data-name="delete"]')
|
||||
expect(
|
||||
page.locator("tr[data-name='sharetokenrowtemplate']:not(.hidden)")
|
||||
).to_have_count(0)
|
||||
@@ -97,8 +97,8 @@ def test_create_and_delete_share_by_map(page: Page, radicale_server: str) -> Non
|
||||
"tr[data-name='sharemaprowtemplate']:not(.hidden) span[data-name='ro']"
|
||||
)
|
||||
).to_be_visible()
|
||||
page.once("dialog", lambda dialog: dialog.accept())
|
||||
page.click('tr:not(.hidden) button[data-name="delete"]', strict=True)
|
||||
page.click('#deleteconfirmationscene button[data-name="delete"]')
|
||||
expect(
|
||||
page.locator("tr[data-name='sharemaprowtemplate']:not(.hidden)")
|
||||
).to_have_count(0)
|
||||
@@ -115,8 +115,8 @@ def test_create_and_delete_share_by_map(page: Page, radicale_server: str) -> Non
|
||||
"tr[data-name='sharemaprowtemplate']:not(.hidden) span[data-name='rw']"
|
||||
)
|
||||
).to_be_visible()
|
||||
page.once("dialog", lambda dialog: dialog.accept())
|
||||
page.click('tr:not(.hidden) button[data-name="delete"]', strict=True)
|
||||
page.click('#deleteconfirmationscene button[data-name="delete"]')
|
||||
expect(
|
||||
page.locator("tr[data-name='sharemaprowtemplate']:not(.hidden)")
|
||||
).to_have_count(0)
|
||||
@@ -192,8 +192,12 @@ def test_share_journal_no_overrides(page: Page, radicale_server: str) -> None:
|
||||
|
||||
# Verify property override visibility
|
||||
expect(page.locator('fieldset[data-name="properties_override"]')).to_be_visible()
|
||||
expect(page.locator('input[data-name="displayname_override_enabled"]')).to_be_visible()
|
||||
expect(page.locator('input[data-name="description_override_enabled"]')).to_be_hidden()
|
||||
expect(
|
||||
page.locator('input[data-name="displayname_override_enabled"]')
|
||||
).to_be_visible()
|
||||
expect(
|
||||
page.locator('input[data-name="description_override_enabled"]')
|
||||
).to_be_hidden()
|
||||
expect(page.locator('input[data-name="color_override_enabled"]')).to_be_hidden()
|
||||
|
||||
# Create the share
|
||||
|
||||
Reference in New Issue
Block a user