aboutsummaryrefslogtreecommitdiff
path: root/tests/playwright
diff options
context:
space:
mode:
authorDaniel Schadt <kingdread@gmx.de>2025-05-11 00:05:49 +0200
committerDaniel Schadt <kingdread@gmx.de>2025-05-11 00:05:49 +0200
commit620f0c03934dd1a52e39a5747532d4c3948ccd5c (patch)
treebef42e42bfcf9b12877d3073e7dce4b6fe81b4b0 /tests/playwright
parent6b4bca6abe5919d35157b369eaa878acf1a96df5 (diff)
downloadfietsboek-620f0c03934dd1a52e39a5747532d4c3948ccd5c.tar.gz
fietsboek-620f0c03934dd1a52e39a5747532d4c3948ccd5c.tar.bz2
fietsboek-620f0c03934dd1a52e39a5747532d4c3948ccd5c.zip
add test for setting new GPX files
Diffstat (limited to 'tests/playwright')
-rw-r--r--tests/playwright/test_basic.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/playwright/test_basic.py b/tests/playwright/test_basic.py
index 231962e..3ae0f58 100644
--- a/tests/playwright/test_basic.py
+++ b/tests/playwright/test_basic.py
@@ -101,6 +101,33 @@ def test_edit(page: Page, playwright_helper, dbaccess):
assert track.description == "Not so descriptive anymore"
+def test_edit_change_gpx(page: Page, playwright_helper, tmp_path, dbaccess):
+ playwright_helper.login()
+ track_id = playwright_helper.add_track().id
+
+ track = dbaccess.execute(select(models.Track).filter_by(id=track_id)).scalar_one()
+ old_cache = track.cache.length, track.cache.uphill, track.cache.downhill
+
+ page.goto(f"/track/{track_id}")
+ page.locator(".btn", has_text="Edit").click()
+
+ gpx_data = load_gpx_asset("Synthetic_BRouter_1.gpx.gz")
+ gpx_path = tmp_path / "NewGPX.gpx"
+ with open(gpx_path, "wb") as gpx_fobj:
+ gpx_fobj.write(gpx_data)
+
+ page.get_by_label("New file for this track").set_input_files(gpx_path)
+ page.locator(".btn", has_text="Save").click()
+
+ track = dbaccess.execute(select(models.Track).filter_by(id=track_id)).scalar_one()
+ new_cache = track.cache
+ dbaccess.refresh(new_cache)
+
+ assert old_cache[0] != new_cache.length
+ assert old_cache[1] != new_cache.uphill
+ assert old_cache[2] != new_cache.downhill
+
+
def test_browse(page: Page, playwright_helper, dbaccess):
playwright_helper.login()
track = playwright_helper.add_track()