Files
Aislo/resources/tester/test_est_dongwon_check.py
T
eomsangdonandClaude Opus 5.5 b1c7d3dbc3 feat(est-test): 동원 확인 탭(장비·단산·일위 대조)·내역서 줄별 펼침
- 호표 1 단위 펼친 항목 합과 호표 금액 대조, 10원 넘게 어긋나면 표시
- 당초값·계산값(노무·재료·경비·실적)과 항목 목록
- 동원 계산에 호표 단위 펼치기(roots) 추가

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-12 19:33:32 +09:00

27 lines
1.1 KiB
Python

"""동원 확인 탭: 호표 1 단위 펼침 합과 호표 금액 대조(10원 넘으면 표시)."""
from test_est_rea_parity import run
def test_head_check_flags_mismatch_over_ten_won():
result = run(
"math",
"""(()=>{
const p=EstNative.empty();p.options.SourceRefresh=false;
p.tables.LaborcDat=[{Code:'L1',Name:'보통인부',TC:100,NC:100}];
p.tables.StuffcDat=[{Code:'M1',Name:'자갈',TC:50,GC:50}];
p.tables.HeadMainDat=[{Code:'H1',Index:1,Name:'A'},{Code:'L1',LinkIndex:6,GN:2,NU:100,NC:200},
{Code:'M1',LinkIndex:5,GN:1,GU:50,GC:50}];
const q=EstNative.calculate(p);
const a=EstDongwonCheck.check(q,103).rows[0];
q.tables.HeadTitleDat[0].TC=a.TC+11;
const b=EstDongwonCheck.check(q,103).rows[0];
return {tc:a.TC,sum:Math.trunc(a.sum),calc:[a.calc.NC,a.calc.GC],a:a.checked,b:b.checked,
items:a.items.map(r=>r.Code).sort()};
})()""",
)
assert result["tc"] == 250 and result["sum"] == 250
assert result["calc"] == [200, 50]
assert result["a"] is False and result["b"] is True
assert result["items"] == ["L1", "M1"]