From dc1399244d0a00816e318db3f8e0cc0bc1ca5e26 Mon Sep 17 00:00:00 2001 From: umsangdon Date: Wed, 30 Sep 2026 13:32:15 +0900 Subject: [PATCH] =?UTF-8?q?test(M02):=20=ED=95=A9=EC=B9=9C=20=EB=92=A4=20?= =?UTF-8?q?=EB=B9=A8=EA=B0=95=20=EB=91=98=20=E2=80=94=20=EC=98=9B=20?= =?UTF-8?q?=EA=B7=9C=EC=B9=99=EC=9D=84=20=EC=9E=AC=EB=8D=98=20=EC=8B=9C?= =?UTF-8?q?=ED=97=98=EC=9D=84=2026-7e=20=C2=B7=2027-1d=20=EA=B7=9C?= =?UTF-8?q?=EC=B9=99=EC=9C=BC=EB=A1=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - test_m02_structure_combo: 화면 표 [저장]은 있던 항목 머리(경로)를 저장본 그대로(나무가 정본 · 26-7e) — 분류1 · 분류3 은 저장 전 값 · 단위 · 일위대가는 표대로 - test_m02_structure_options: 좌측 차례를 새 모양(extras 옵션 → 도면 · children 차례)으로 잼(27-1d reveal) Co-Authored-By: Claude Opus 5.5 --- resources/tester/test_m02_structure_combo.py | 12 ++++++------ resources/tester/test_m02_structure_options.py | 8 ++++---- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/resources/tester/test_m02_structure_combo.py b/resources/tester/test_m02_structure_combo.py index c10e1d7e..4333b214 100644 --- a/resources/tester/test_m02_structure_combo.py +++ b/resources/tester/test_m02_structure_combo.py @@ -60,6 +60,9 @@ def test_처음_한_번_만듦_글_열_빼고_칸은_집계표_그대로(client, def test_집계표_저장_때_새_열_지운_열_고친_열을_맞춤_키_유지(client): before = _keys(client) + old_rv = next( + r for r in client.get("/api/m02/structure-combos").json()["줄"] if r["열"] == "rv" + ) def change(table): cols = table["열"] @@ -77,12 +80,9 @@ def test_집계표_저장_때_새_열_지운_열_고친_열을_맞춤_키_유지 assert [r["열"] for r in doc["줄"]][:4] == ["rv", "new1", "c1", "pv_b"] # 집계표 차례 assert all(rows[c]["키"] == k for c, k in before.items() if c != "h_rip_m") rv = rows["rv"] - assert (rv["분류1"], rv["분류3"], rv["단위"], rv["일위대가"]) == ( - "메쌓기", - "기초유", - "m", - "UA000004", - ) + # 화면 표 [저장](26-7e) — 있던 항목 머리(경로)는 나무가 정본이라 저장본 그대로 · 나머지는 표대로 + assert (rv["분류1"], rv["분류3"]) == (old_rv["분류1"], old_rv["분류3"]) + assert (rv["단위"], rv["일위대가"]) == ("m", "UA000004") assert (rv["바인딩"], rv["펼침"]) == ({"종류": "revetment"}, True) # 번호는 세 파일과 같음 — 새 열도 [저장] 한 번에 SD · SA · SM 이 섬 numbers = client.get("/api/m02/structures/numbers").json() diff --git a/resources/tester/test_m02_structure_options.py b/resources/tester/test_m02_structure_options.py index fe9d9090..dd671b6b 100644 --- a/resources/tester/test_m02_structure_options.py +++ b/resources/tester/test_m02_structure_options.py @@ -116,11 +116,11 @@ def test_파일이_깨져도_폼_응답은_모두_보임(client) -> None: def test_좌측_줄은_구조물_집계_양식_아래_한_줄_같은_한_곳에서_지움() -> None: side = (ROOT / "M02_MasterTemplete/M02_MasterTemplete_UI_Side.ts").read_text("utf-8") assert "section(options.title, options.body)" in side - assert ( - side.index(" summary,") - < side.index("section(options.title") - < side.index('section(L("M02_KindDrawing")') + # 차례 = 구조물 조합 → 옵션 → 도면 양식(시스템 층에만 · 해시 진입 `reveal` 이 이름으로 · 27-1d) + assert side.index("옵션: section(options.title") < side.index( + '도면: section(L("M02_KindDrawing")' ) + assert "children: [summary, ...(extras ? [extras.옵션, extras.도면] : [])]" in side assert "onOpen: () => (options.clear(), paint())" in side # 자재 조합을 열면 이 줄 고름 지움 assert "onOpen: () => (matset.clear(), paint())" in side # 이 줄을 열면 자재 조합 고름 지움 paint = side.split("function paint(): void {")[1].split("\n }\n")[0]