feat(B08): 구조물 집계표 배관 열 = 서버 칸 — 머리 구조물 · 형식 · 규격 3단 + 단위 · 계 줄 · 관 공 맨 윗 머리 조합 경로(98-4)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
This commit is contained in:
2026-10-08 14:11:04 +09:00
co-authored by Claude Opus 5.5
parent 02225ed071
commit b43cda3ed8
3 changed files with 110 additions and 12 deletions
@@ -213,3 +213,14 @@ def test_1본_길이는_프로젝트_층_변수(root, tmp_path, monkeypatch):
def test_라우터_등록():
text = (Path(__file__).resolve().parents[2] / "main.py").read_text(encoding="utf-8")
assert "app.include_router(b08_summary_router, dependencies=protected_with_company)" in text
def test_화면이_서버_칸을_그림():
"""98-4 — 화면은 서버 배관 열 · 칸 · 계만 그림(계산 없음) · 배관 조합 열은 서버 열로 바뀜."""
base = Path(__file__).resolve().parents[2]
ui = (base / "B08_Quantity/B08_Quantity_UI_Summary.ts").read_text(encoding="utf-8")
assert "/quantity/summary" in ui and "pipeColumns(pipe, comboPath)" in ui
assert '(point.facility ?? "pipe") !== "pipe"' in ui # 배관 조합 열 대신 서버 열
assert "combosAt(things, station)" in ui # 모달은 배관 조합까지 그대로
locale = (base / "ui_template/ui_template_locale_b4.ts").read_text(encoding="utf-8")
assert 'B08_Quantity_Summary_Total: ["계", "Total"]' in locale