mirror of
https://github.com/umap-project/umap.git
synced 2025-04-28 19:42:36 +02:00

The main issue was because we overrided the `getLatLngs` function in our PointMixin class, so I changed the way feature get the latlngs from the UI classes. fix #2171
81 lines
2.3 KiB
Python
81 lines
2.3 KiB
Python
import json
|
|
from pathlib import Path
|
|
|
|
import pytest
|
|
from playwright.sync_api import expect
|
|
|
|
from ..base import DataLayerFactory
|
|
|
|
pytestmark = pytest.mark.django_db
|
|
|
|
|
|
def test_basic_circles_layer(map, live_server, page):
|
|
path = Path(__file__).parent.parent / "fixtures/test_circles_layer.geojson"
|
|
data = json.loads(path.read_text())
|
|
DataLayerFactory(data=data, map=map)
|
|
page.goto(f"{live_server.url}{map.get_absolute_url()}#12/47.2210/-1.5621")
|
|
paths = page.locator("path")
|
|
expect(paths).to_have_count(10)
|
|
# Last arc curve command
|
|
assert (
|
|
page.locator("[data-feature=c1160]")
|
|
.get_attribute("d")
|
|
.endswith("a40,40 0 1,0 -80,0 ")
|
|
)
|
|
assert (
|
|
page.locator("[data-feature=ca676]")
|
|
.get_attribute("d")
|
|
.endswith("a31,31 0 1,0 -62,0 ")
|
|
)
|
|
assert (
|
|
page.locator("[data-feature=cap64]")
|
|
.get_attribute("d")
|
|
.endswith("a10,10 0 1,0 -20,0 ")
|
|
)
|
|
assert (
|
|
page.locator("[data-feature=cap27]")
|
|
.get_attribute("d")
|
|
.endswith("a6,6 0 1,0 -12,0 ")
|
|
)
|
|
assert (
|
|
page.locator("[data-feature=capa8]")
|
|
.get_attribute("d")
|
|
.endswith("a4,4 0 1,0 -8,0 ")
|
|
)
|
|
assert (
|
|
page.locator("[data-feature=capa6]")
|
|
.get_attribute("d")
|
|
.endswith("a3,3 0 1,0 -6,0 ")
|
|
)
|
|
assert (
|
|
page.locator("[data-feature=capa4]")
|
|
.get_attribute("d")
|
|
.endswith("a3,3 0 1,0 -6,0 ")
|
|
)
|
|
assert (
|
|
page.locator("[data-feature=capa3]")
|
|
.get_attribute("d")
|
|
.endswith("a2,2 0 1,0 -4,0 ")
|
|
)
|
|
assert (
|
|
page.locator("[data-feature=capa2]")
|
|
.get_attribute("d")
|
|
.endswith("a2,2 0 1,0 -4,0 ")
|
|
)
|
|
assert (
|
|
page.locator("[data-feature=capa0]")
|
|
.get_attribute("d")
|
|
.endswith("a2,2 0 1,0 -4,0 ")
|
|
)
|
|
|
|
|
|
def test_can_draw_new_circles(openmap, live_server, page):
|
|
path = Path(__file__).parent.parent / "fixtures/test_circles_layer.geojson"
|
|
data = json.loads(path.read_text())
|
|
DataLayerFactory(data=data, map=openmap)
|
|
page.goto(f"{live_server.url}{openmap.get_absolute_url()}?edit#12/47.2210/-1.5621")
|
|
paths = page.locator("path")
|
|
expect(paths).to_have_count(10)
|
|
page.get_by_title("Draw a marker").click()
|
|
page.locator("#map").click(position={"x": 200, "y": 200})
|
|
expect(paths).to_have_count(11)
|