# -*- coding: utf-8 -*- """283 · 493-2 · 493-5 B05 [저장] = 보이는 화면 그대로 · 초기화 기준 = 노선 추천 [적용](요구 289 · 290). - 손 고침 [저장] — 띠 · 확인 창 · 저장 뒤 초기화 알림 · 세션 초안 통째 비움 없음(492-2 걷음 · 소스 확인). - 추천 [적용] 확인 창 · 적용 뒤 알림 · 추가 측점 다시 받음 시험은 지움 — 화면 [적용] 걷음(626-1 · 요구 530 · D8). """ from __future__ import annotations from pathlib import Path ROOT = Path(__file__).resolve().parents[2] def _read(*parts: str) -> str: return ROOT.joinpath(*parts).read_text(encoding="utf-8") # ── 손 고침 [저장] = 보이는 화면 그대로 ─────────────────────────────────────── def test_저장_확인창_초기화알림_초안비움_없음(): src = _read("A00_Common", "design", "design_save.ts") for gone in ("confirmRouteReset", "routeResetNotice", "route_reset", "clearDrafts("): assert gone not in src body = src[src.index("export async function saveDesign(") :] # 잠금 막 앞에 묻는 것 없음 — 노선 초안 읽기는 잠금 막 뒤(492 이전 차례) assert body.index("showLoadingOverlay()") < body.index("pendingRouteSave(") def test_띠_걷음(): assert "mountRouteResetBand" not in _read("A00_Common", "design", "design_view_profile.ts") assert "reset-band" not in _read("B05_Profile", "B05_Profile_UI_Style_RouteEdit.css") assert "pageRoutePlan" not in _read("A00_Common", "design", "design_page_data.ts") assert "routeShapeChanged" not in _read("B05_Profile", "logic", "B05_Profile_Grade_Carry.ts") logic = _read("B05_Profile", "logic", "B05_Profile_Route_Reset.ts") for gone in ("ROUTE_RESET_BAND", "draftShapeChanged", "askRouteReset"): assert gone not in logic