- 새 M01_MasterData_UI_LogicLab_Revise.ts(reviseHits · askRevise · saveRevised) · 부품 상자 모달 · 목록 줄 · 배지 - LogicLab [저장](흐름 저장 · 지우기 · 더하기 같은 길)이 saveRevised 로 · 줄 수 그대로(627) - Logic_Api saveFiles 에 개정확인 인자(기본 false) - 옛 409 stale 은 토스트 그대로 - 새 지킴 시험 test_713_2_revise_ui Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
35 lines
1.3 KiB
Python
35 lines
1.3 KiB
Python
"""713-2 정본 개정 확인 창 지킴 시험 — 글로 잡음(화면 · 서버 없음).
|
|
|
|
- `/save` 몸에 `개정확인` 이 실림 · 로직 화면 [저장]은 `saveRevised` 한 길(개정 409 → 창 → 다시 보냄)
|
|
- 창은 부품 상자(모달 · 목록 줄 · 배지)만 · 옛 `stale` 409 는 이 창 대상 밖
|
|
"""
|
|
|
|
from pathlib import Path
|
|
|
|
M01 = Path(__file__).resolve().parents[2] / "M01_MasterData"
|
|
|
|
|
|
def _read(name: str) -> str:
|
|
return (M01 / f"M01_MasterData_UI_{name}.ts").read_text(encoding="utf-8")
|
|
|
|
|
|
def test_save_body_carries_confirm():
|
|
api = _read("Logic_Api")
|
|
assert 'request("/save", { files, 개정확인 })' in api
|
|
|
|
|
|
def test_lab_save_goes_through_revise():
|
|
lab = _read("LogicLab")
|
|
assert "saveRevised((ok) => saveFiles(" in lab
|
|
assert "await saveFiles(" not in lab.replace("saveRevised((ok) => saveFiles(", "")
|
|
|
|
|
|
def test_revise_window_parts_only():
|
|
rev = _read("LogicLab_Revise")
|
|
for part in ("ui_template_modal", "ui_template_list_row", "ui_template_badge"):
|
|
assert f"@ui/{part}" in rev
|
|
assert "<button" not in rev and "document.createElement" not in rev
|
|
# 개정 409 만 창 — 옛 stale 409 는 부르는 쪽 토스트 그대로
|
|
assert "개정?: ReviseHit[]" in rev and "if (!hits) throw error" in rev
|
|
assert "save(true)" in rev
|