[OASIS] raise PatternError for unsuppored caps

This commit is contained in:
Jan Petykiewicz 2026-03-31 21:42:49 -07:00
commit 4b07bb9e25
2 changed files with 19 additions and 1 deletions

View file

@ -1,9 +1,12 @@
import io
from pathlib import Path
import pytest
from numpy.testing import assert_equal
from ..error import PatternError
from ..pattern import Pattern
from ..library import Library
from ..shapes import Path as MPath
def test_oasis_roundtrip(tmp_path: Path) -> None:
@ -42,3 +45,16 @@ def test_oasis_properties_to_annotations_merges_repeated_keys() -> None:
)
assert annotations == {"k": [1, 2, 3]}
def test_oasis_write_rejects_circle_path_caps() -> None:
pytest.importorskip("fatamorgana")
from ..file import oasis
lib = Library()
pat = Pattern()
pat.path((1, 0), vertices=[[0, 0], [10, 0]], width=2, cap=MPath.Cap.Circle)
lib["cell1"] = pat
with pytest.raises(PatternError, match="does not support path cap"):
oasis.write(lib, io.BytesIO(), units_per_micron=1000)