mirror of
https://github.com/umap-project/umap.git
synced 2025-05-02 04:52:22 +02:00
23 lines
1 KiB
Python
23 lines
1 KiB
Python
import json
|
|
import re
|
|
from pathlib import Path
|
|
|
|
from umap.models import DataLayer
|
|
|
|
|
|
def test_table_editor(live_server, openmap, datalayer, page):
|
|
page.goto(f"{live_server.url}{openmap.get_absolute_url()}?edit")
|
|
page.get_by_role("link", name="Manage layers").click()
|
|
page.locator(".panel").get_by_title("Edit properties in a table").click()
|
|
page.once("dialog", lambda dialog: dialog.accept(prompt_text="newprop"))
|
|
page.get_by_text("Add a new property").click()
|
|
page.locator('input[name="newprop"]').fill("newvalue")
|
|
page.once("dialog", lambda dialog: dialog.accept())
|
|
page.hover(".umap-table-editor .tcell")
|
|
page.get_by_title("Delete this property on all").first.click()
|
|
with page.expect_response(re.compile(r".*/datalayer/update/.*")):
|
|
page.get_by_role("button", name="Save").click()
|
|
saved = DataLayer.objects.last()
|
|
data = json.loads(Path(saved.geojson.path).read_text())
|
|
assert data["features"][0]["properties"]["newprop"] == "newvalue"
|
|
assert "name" not in data["features"][0]["properties"]
|