"""갈래 이름 별칭 — 우리 「리핑암」 ↔ 일위대가 「파쇄암」 (2026-09-08). ⚠ 겨누는 것 넷 ① 인계본에 별칭이 실린다 — 받는 쪽이 이름만 달라 못 붙이던 자리(도자 운반 ≒ 30만원) ② ⚠ 갈래 이름 **자체는 안 바뀐다** — 흙깎기(FP-09-04)가 「리핑암」으로 서 있다 ③ 근거가 데이터에 적혀 있다(품셈 10-11 f 「파쇄암 1/1.35」 = 10-12 [주]③ 「암절취 1.35」) ④ 별칭 표가 비어도 인계본은 그 칸을 갖는다(빈 칸과 없는 칸을 가른다) """ from __future__ import annotations import sys from pathlib import Path ROOT = Path(__file__).resolve().parents[2] sys.path.insert(0, str(ROOT)) from B08_Quantity.B08_Quantity_Engine_Handoff import build_handoff, load_mapping # noqa: E402 from B08_Quantity.B08_Quantity_Engine_Handoff_Mapping import WorkItemMapping # noqa: E402 def test_인계본에_별칭이_실린다() -> None: aliases = build_handoff()["ground_class_aliases"] assert "파쇄암" in aliases["리핑암"]["names"] def test_갈래_이름_자체는_안_바뀐다() -> None: """⚠ 이름을 갈면 흙깎기 매핑(FP-09-04 리핑암)이 어긋난다 — 잇기만 한다.""" mapping = load_mapping() assert mapping.for_earthwork("흙깎기", "리핑암")["work_item_code"] == "FP-09-04" assert mapping.for_earthwork("흙깎기", "파쇄암") is None def test_근거가_데이터에_적혀_있다() -> None: basis = load_mapping().ground_aliases["aliases"]["리핑암"]["basis"] assert "10-11" in basis and "10-12" in basis and "1.35" in basis def test_표가_비어도_칸은_있다() -> None: assert build_handoff(mapping=WorkItemMapping())["ground_class_aliases"] == {}