# -*- coding: utf-8 -*- """기타 집계표 머리(이름마다 펼침) = 목록 이름 — 손 이름 · 비면 「기타」 — PLAN 53-2. 화면은 ORCA `ui_checks/53-2_목록_강조.js`. """ from M02_MasterTemplete import M02_Table_Fill as fill from resources.tester.test_structures_summary_snapshot import ( # noqa: F401 — world 고정물 _save, world, ) SOURCE = {"종류": "etc", "펼침": ["name"]} def test_기타_표_머리는_손_이름_비면_기타(world): # noqa: F811 — 고정물 base = {"type_id": "etc", "placement": "point"} named = {**base, "structure_id": "e1", "chainage_m": 20.0, "options": {"name": " 배수판 "}} same = {**base, "structure_id": "e2", "chainage_m": 40.0, "options": {"name": "배수판"}} space = {**base, "structure_id": "e3", "chainage_m": 60.0, "options": {"name": " "}} none = {**base, "structure_id": "e4", "chainage_m": 80.0, "options": {}} _save(world["root"], [named, same, space, none], []) items = {i["복사본"]: i for i in fill.collect_items(world["root"])} heads = {key: fill._expansion(SOURCE, items[key]) for key in ("e1", "e2", "e3", "e4")} assert heads == {"e1": ("배수판",), "e2": ("배수판",), "e3": ("기타",), "e4": ("기타",)} assert [items[key]["그룹"] for key in ("e1", "e3", "e4")] == ["배수판", "기타", "기타"]