diff options
author | Daniel Schadt <kingdread@gmx.de> | 2023-09-11 21:32:10 +0200 |
---|---|---|
committer | Daniel Schadt <kingdread@gmx.de> | 2023-09-11 21:32:10 +0200 |
commit | 9550be82608f54407f2306d13045d5cf90e8d56e (patch) | |
tree | d7a27ce4e3a932ed2d0dc21d011ed85c2fc322fa /tests/playwright | |
parent | 68e49e1e879a32c0f0d764f927923ca42706e593 (diff) | |
parent | 6b320b11ac2f86e9f63f6f9998db9dbbac56849d (diff) | |
download | fietsboek-9550be82608f54407f2306d13045d5cf90e8d56e.tar.gz fietsboek-9550be82608f54407f2306d13045d5cf90e8d56e.tar.bz2 fietsboek-9550be82608f54407f2306d13045d5cf90e8d56e.zip |
Merge branch 'favourites'
Diffstat (limited to 'tests/playwright')
-rw-r--r-- | tests/playwright/test_basic.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/playwright/test_basic.py b/tests/playwright/test_basic.py index a98e52d..66ec326 100644 --- a/tests/playwright/test_basic.py +++ b/tests/playwright/test_basic.py @@ -146,3 +146,23 @@ def test_delete(page: Page, playwright_helper, dbaccess, data_manager): assert track is None with pytest.raises(FileNotFoundError): data_manager.open(track_id) + + +def test_favour(page: Page, playwright_helper, dbaccess, data_manager): + john = playwright_helper.john_doe() + playwright_helper.login() + track_id = playwright_helper.add_track().id + + page.goto(f"/track/{track_id}") + + with page.expect_request_finished(predicate=lambda req: "/toggle-favourite" in req.url): + page.locator(".favourite-star").click() + + track = dbaccess.execute(select(models.Track).filter_by(id=track_id)).scalar_one_or_none() + assert john.id in [user.id for user in track.favourees] + + with page.expect_request_finished(predicate=lambda req: "/toggle-favourite" in req.url): + page.locator(".favourite-star").click() + + dbaccess.refresh(track, ["favourees"]) + assert john.id not in [user.id for user in track.favourees] |