- 앞 커밋이 파일 옮기기만 걸리고 내용 고친 것(B08 대조 빼기·경로 새 자리)을 안 실음 — 마저 담음 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
41 lines
1.6 KiB
Python
41 lines
1.6 KiB
Python
# -*- coding: utf-8 -*-
|
|
"""B06 벽 전면 기울기도 **품셈 표준경사 표**를 읽음 — B5 (2026-09-14 브레인 판정 「양쪽 다 이 표를」).
|
|
|
|
2026-09-22 sub1: B08 쪽 파이썬 대조(`B08_Quantity_Engine_UnitQuantity_StoneSpec`)는 B08 이
|
|
`old_code/` 로 끊기며 같이 죽었음 — 그 대조 시험은 빼고, **B06 몫**(표 경로가 최신판인지 ·
|
|
벽 모양이 붙박이 기울기를 더는 안 곱하는지)만 되살림.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
import re
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
ROOT = Path(__file__).resolve().parents[2]
|
|
if str(ROOT) not in sys.path:
|
|
sys.path.insert(0, str(ROOT))
|
|
|
|
DATA_DIR = ROOT / "resources" / "data_masonry"
|
|
|
|
GEOMETRY = [
|
|
"B06_Section_UI_Cross_Culvert_Geom.ts",
|
|
"B06_Section_UI_Cross_Wall.ts",
|
|
"B06_Section_UI_Cross_Culvert_Extra.ts",
|
|
"B06_Section_UI_Cross_Culvert_Solve.ts",
|
|
]
|
|
|
|
|
|
def test_횡단도가_최신_표준경사_판을_읽는다() -> None:
|
|
const = (ROOT / "B06_Section" / "B06_Section_UI_Cross_Lean.ts").read_text(encoding="utf-8")
|
|
latest = sorted(DATA_DIR.glob("masonry_slope_*.json"))[-1].name
|
|
imported = re.search(r'from "\.\./resources/data_masonry/(masonry_slope_[^"]+)"', const)
|
|
assert imported and imported.group(1) == latest
|
|
|
|
|
|
def test_벽_모양이_붙박이_기울기를_안_곱한다() -> None:
|
|
"""벽 모양 파일마다 `REVET_LEAN_RATIO *` 곱이 남아 있으면 그 벽은 아직 1:0.3 붙박이."""
|
|
for name in GEOMETRY:
|
|
source = (ROOT / "B06_Section" / name).read_text(encoding="utf-8")
|
|
assert not re.search(r"REVET_LEAN_RATIO\s*[*/]", source), name
|