Files
Aislo/resources/tester/test_713_3_list.py
T

33 lines
1.6 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""713-3 지킴 — 로직 목록 덧칸(묶음 · 작업량 부모 · 부르는/불리는 수 · 관련) · 정본 그대로 · 줄 수 그대로."""
from __future__ import annotations
from M01_MasterData import M01_MasterData_Router as router
from M01_MasterData import M01_MasterData_Store_List as store_list
COLS = {"묶음", "묶음수", "작업량", "부모", "부르는수", "불리는수", "관련"}
def test_목록_줄_수_그대로_덧칸_다_있음() -> None:
got = router.get_logics()["logics"]
assert len(got) == 1461 # 묶음은 화면 접기만 — 목록 줄은 정본 로직 수 그대로(713-4 뒤 1,461)
assert all(COLS <= set(x) for x in got)
def test_묶음_작업량_부르기() -> None:
more = store_list.extras()
# 한 절에 로직 둘 넘음(조사 12-B ㉯ 323 → 713-4 합침 · 지움 뒤 307)
assert sum(1 for v in more.values() if v["묶음"]) == 307
work = {k for k, v in more.items() if v["작업량"]}
assert len(work) == 21 # 27 − 터파기 작업량 6(713-4 · 단가 로직 안에 품음)
assert more["GF000098"]["부모"] == ["GF000099"] # 측구터파기 작업량 → 단가 로직 밑
assert more["GC000268"]["불리는수"] >= 300 # 기계경비 로직
assert sum(1 for v in more.values() if v["부르는수"]) == 506
assert more["GC000294"]["관련"] == ["GC000292"] # 비고 「1-5-6(주③)」
def test_관련은_해석_글과_넓은_절을_뺌() -> None:
more = store_list.extras()
assert all(len(v["관련"]) <= store_list._WIDE for v in more.values())
assert not any(k in v["관련"] for k, v in more.items()) # 자기 자신 없음