"""368-3 원지반 점 임시 횡단 작은 창 · 추가 측점 점선 · 우클릭 「측점 삭제」 — 연결 자리를 소스로 봄. 화면 동작(누름 → 창 → [측점 추가] → B06 카드 → 삭제)은 ORCA 로 확인. """ from pathlib import Path ROOT = Path(__file__).resolve().parents[2] def _read(relative: str) -> str: return (ROOT / relative).read_text(encoding="utf-8") def test_추가_측점_선_점선_끌기_없음() -> None: graph = _read("B06_Section/B06_Section_UI_Longitudinal.ts") assert 'station.kind === "irregular" && !station.plus' in graph assert 'station.plus ? "plus" : station.kind' in graph css = _read("B06_Section/B06_Section_UI_Style_Cross.css") rule = css[css.index(".b06-chart__station-line--plus") :].split("}")[0] assert "var(--color-warning)" in rule and "stroke-dasharray: 5 3" in rule assert "PLUS_OWNER_PREFIX" in _read("B05_Profile/B05_Profile_UI_Profile_Layout.ts") def test_누름_작은_창_우클릭_삭제() -> None: render = _read("B05_Profile/B05_Profile_UI_Profile_Render.ts") assert "groundPickAt(chartWrap, event" in render and "openCrossModal(" in render assert "onRemovePlus: removePlusStation" in render menu = _read("B05_Profile/B05_Profile_UI_Profile_Structures.ts") assert '"측점 삭제", () => options.onRemovePlus?.(near.station.chainage_m)' in menu modal = _read("B05_Profile/B05_Profile_UI_Profile_CrossModal.ts") assert "previewStructureSections(projectId(), [m])" in modal assert "add.disabled = taken" in modal # 같은 m 막음