Files
Aislo/resources/tester/test_b09_water_tank_operating.py

48 lines
2.2 KiB
Python
Raw Permalink 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.
"""물탱크(살수차) 운전경비 되살림 — 2026-09-15 브레인 ③ (초류종자살포 5-24 를 막던 넷 중 하나).
건설품셈 8-4-8 기타기계(원문 L3458)는 36기종이 한 칸에 뭉치고 자동세륜기 「-」 하나가 두 기종 몫(셀 병합)이라
잡재료 35 · 조종원 34 개로 짝이 안 맞아 **줄째 버려짐** → 물탱크 7204 다섯의 운전경비 레코드가 없어 기계 층이 안 섬.
양끝 맞추기는 우연 일치로 틀린 값이 붙어(자동세륜기 0010 조종원이 「1」 로 읽힘) 못 씀 → 원문 값을 손으로 되살림.
원문: 1,800 8.2 · 3,800 8.6 · 5,500 9.3 · 6,500 9.4 · 16,000 12.9 · 잡재료 30 · 조종원 1
조종원 직종 — 8-1-2 5호 「화물차운전사 … 살수차」(원문 또렷) · 거창 실무 5,500ℓ 호표도 화물차운전사 · 경유 9.3 · 잡품 30
"""
from __future__ import annotations
from decimal import Decimal
from B09_Estimation.B09_Estimation_MachineOperating import (
_CATALOG_SUBPATH,
_read_json,
load_operating_records,
)
from B09_Estimation.B09_Estimation_UnitPrice import cached_build
WATER_TANKS = {
"7204-0018": "8.2",
"7204-0038": "8.6",
"7204-0055": "9.3",
"7204-0065": "9.4",
"7204-0160": "12.9",
}
def test_물탱크_다섯은_원문_연료_잡재료_조종원으로_선다() -> None:
records = {r.machine_code: r for r in load_operating_records().records}
truck = _read_json(*_CATALOG_SUBPATH, "labor_const_2026-01-01.json")["variables"]["aliases"][
"labor_op_truck"
]
for code, liters in WATER_TANKS.items():
record = records[code]
assert record.fuel_liters_per_hour == Decimal(liters), record
assert record.fuel_kind == "경유"
assert record.misc_material_percent == Decimal(30)
assert record.operator_person_days == Decimal(1)
assert record.operator_occupation_code == truck, record # 8-1-2 5호 살수차
def test_살수차_기계_층이_서고_막힌_기계에서_빠짐() -> None:
build = cached_build()
assert "X-7204-0055" in build.book.titles
assert not any(m.startswith("7204-0055") for m in build.incomplete_machines)