- 지움(git rm) 10 파일 3,374 줄: M02_Hopyo_Finger · Ours · Option · Fit · Combine · Verdict · Line · SkLink · SkPatch · Basis
- Match: 흐름 몫(candidates · name_cands · fix_typo · clause · b_order · _logic_specs · _line_mod · units_of · _state · view · guess · picks · chain) 지움 · 이름 도구 몫 · line_key 남김
- Words: conds · cond_score · close · cosine · jacc 지움 / Shares: sections 지움(trade · eq_key 남김)
- 옮김: Finger.kind_of → Fixed.kind_of · SkLink(sk_line · kept · left · LEFT · WHY) → Sangeun · SkPatch 기계 몫(MACH_IN · MACHINE · SOLO · _mach_logics) → Units.mach_logics
- Sangeun: 옛 /sangeun 몸(build · _sure · Maker.basis · judge · plan · make) 지움 · Kids: first · proposal · order 지움 · Build: build() · unlinked() 지움(모두 고정 Builder · build_all · _order · _origins 남김)
- Router: 옛 길 지움(GET hopyo/{키}/{번} · guess · hopyo-picks · hopyo-build · hopyo-unlinked · hopyo/{키}/sangeun) · GET hopyo/{키} = Judge.view(1차 줄 판정 줄상태 · 만든 · 블록 풀이 셈)
- Marks: 칠 = Judge.judged 만 · Forget: 맞춤 캐시 지움 줄 걷음 · Ledger: Ours.version 판 칸 걷음 · Item: Kids.first 걷음
- Row(덧): 단산 줄 = 장부 짝이 있어도 늘 「2차 필요」(장부 = 1차 후보 힌트만)
시험 정리(까닭 = 지운 길 · 모듈만 시험함):
- 지움 11 파일: test_m02_hopyo_finger · fit · golden · option · ours · basis · seam · flow · draft_calc · test_635 · test_628(지문 · 순위 · 옵션 거꾸로 · 맡은 절 · 옛 확인 흐름)
- 함수 지움: /sangeun · /hopyo-build · /hopyo-unlinked · hopyo-picks · 옛 줄 맞춤 보기를 부르던 것(572 · 718_1 · 729 · 739_1 · 777_1 · 778_5 · 780_1 · labor_national · 705_3 · m02_hopyo_match · 746_1)
- test_621 S2(지문 해시) 지움 · S1 남김 · test_m02_hopyo_build = 장부 길 시험만(PUT 으로 심음)
- 새 길로: 779_2(줄상태 = 1차 판정 · 칠 셈 전 None) · grid · stmate(hopyo-judge 줄 판) · 778_1 · 778_2(Units.mach_logics) · 642_6(Marks 원문) · 642_3 장부 짝 단산 줄 2차 지킴
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
37 lines
2.0 KiB
Python
37 lines
2.0 KiB
Python
"""장비 → EQ 괄호 낱말(PLAN 778-1 · 분석 621-B 2-3) — 「굴착기(타이어형)」 = 타이어 기계 · 부속 뺌.
|
|
|
|
같은 갈래 · 규격에 이름 여럿(타이어 · 무한궤도 · 습지 · 부착용)인 EQ 를 글의 괄호 낱말로 가름 —
|
|
불러오기 이음(`Linker._machine`) · 후보 1위(`Elem.machines`) ·
|
|
기계경비 기초 차례(`Units.mach_logics` · 785-7 옛 `SkPatch` 갈음) 모두 같은 기계. master 읽기만.
|
|
"""
|
|
|
|
from M01_MasterData import M01_MasterData_Store as m01
|
|
from M02_MasterTemplete import M02_Hopyo_Elem as elem
|
|
from M02_MasterTemplete import M02_Hopyo_Fixed as hfix
|
|
from M02_MasterTemplete import M02_Hopyo_Units as units
|
|
|
|
TIRE = "굴착기(타이어형)(0.6㎥)"
|
|
|
|
|
|
def _key(code: str) -> str:
|
|
"""기계 번호(0211-0060) → EQ 키."""
|
|
return str(m01.loaded()[1].numbers["EQ"][code]["키"])
|
|
|
|
|
|
def test_굴착기_타이어형_EQ000026_세_길_같음():
|
|
linker = hfix.Linker(by_name=True)
|
|
assert linker._machine({"이름": "굴착기(타이어형)", "규격": "0.6㎥"}) == "EQ000026"
|
|
assert elem.machines(TIRE)[0]["키"] == "EQ000026"
|
|
assert elem.machine(TIRE)["키"] == "EQ000026"
|
|
# 부속 · 형식 낱말 — 덤프트럭 ≠ 자동덮개 · 굴착기 0.7 ≠ 습지 · 콤팩터(부착용) · 무한궤도 그대로
|
|
assert linker._machine({"이름": "덤프트럭", "규격": "15톤"}) == "EQ000074"
|
|
assert linker._machine({"이름": "굴착기", "규격": "0.7㎥"}) == "EQ000020"
|
|
assert linker._machine({"이름": "굴착기(무한궤도)", "규격": "0.6㎥"}) == "EQ000019"
|
|
assert linker._machine({"이름": "굴착기", "규격": "0.6㎥"}) is None # 타이어 · 무한궤도 못 가름
|
|
|
|
whole = m01.loaded()[1]
|
|
eq = next(v for v in whole.numbers["EQ"].values() if v.get("키") == "EQ000026")
|
|
first = units.mach_logics(whole, {"굴착기"}, eq)[0]
|
|
assert first != units.MACHINE["굴착기"] # 굴착기(무한궤도) 기계경비 아님
|
|
assert first in units.MACHINE_SET and _key(eq["원문번호"]) == "EQ000026"
|