Merge remote-tracking branches 'origin/sub_laptop_4' and 'origin/sub_laptop_8' into sub_laptop_2

This commit is contained in:
2026-10-19 09:57:37 +09:00
7 changed files with 151 additions and 72 deletions
+5 -1
View File
@@ -103,7 +103,11 @@ def test_초안_있으면_열_때_측점_냄() -> None:
def test_화면_선만_바뀌면_낡음_다시_셈() -> None:
src = (ROOT / "A00_Common/design/design_pipeline_page.ts").read_text(encoding="utf-8")
restart = src[src.index(" restart() {") :]
assert "publisher.recheck(projectId, canon.routeId)" in restart[: restart.index(" },")]
# 정본 지문은 `design_pipeline_page_saved`(472-5 나눔) — 노선 번호를 거기서 읽음
assert (
"publisher.recheck(projectId, pageSaved.canonRouteId()"
in restart[: restart.index(" },")]
)
store = (ROOT / "B06_Section/B06_Section_Section_Store.ts").read_text(encoding="utf-8")
fn = store[store.index("export function recrossIfStale(") :]
assert "recrossSaved(projectId, key, detail, routeId)" in fn[: fn.index("\n}\n")]
@@ -6,7 +6,7 @@
`pavement_*`(포장 제안 표기)가 사라짐(검증_sub8 측점 351).
고침 — 같은 자리(누가거리) 옛 줄에서 `STATION_CARRY_KEYS` 를 들고 감 · 사용자 상단측은 새 자동값을
이김 · 옛 줄 없는 새 자리는 포장 표기를 지금 계획선으로 셈.
X6 — 옮긴 측점이 들고 가는 횡단 입력 TS `ROW_CARRY_KEYS` = 파이썬 `CARRY_INPUT_KEYS`(거울).
X6 — 옮긴 측점 횡단 입력 = TS `ROW_CARRY_KEYS` 하나 · 파이썬 `CARRY_INPUT_KEYS` 는 그 글을 읽음.
./venv/Scripts/python.exe -m pytest resources/tester/test_472_station_user_fields.py -q
"""
@@ -124,7 +124,27 @@ def test_새_자리는_포장_표기를_지금_계획선으로(tmp_path) -> None
def test_X6_옮긴_측점_횡단_입력_TS_파이썬_한_벌() -> None:
"""목록 정본 = TS `ROW_CARRY_KEYS` 하나 · 파이썬은 그 글을 읽음(손으로 맞춘 목록 둘 없음)."""
source = (ROOT / "B06_Section/logic/B06_Section_Station_Swap.ts").read_text(encoding="utf-8")
body = re.search(r"export const ROW_CARRY_KEYS = \[(.*?)\] as const;", source, re.S)
assert body is not None
assert tuple(re.findall(r'"([a-z_0-9]+)"', body.group(1))) == CARRY_INPUT_KEYS
assert len(CARRY_INPUT_KEYS) == 7 and "berm" in CARRY_INPUT_KEYS
design = (ROOT / "B06_Section/B06_Section_Router_Design.py").read_text(encoding="utf-8")
assert "CARRY_INPUT_KEYS = (" not in design # 파이썬에 목록 글 없음
def test_요구274_노선이_바뀌면_손_상단측은_안_들고_감() -> None:
"""사용자 확정 — 새 자리로 가면 손 상단측은 의미 없음 · 새 지형이 정함(지금 규칙 굳힘)."""
from B06_Section.B06_Section_Engine_Design import ROUTE_CARRY_KEYS
from B06_Section.B06_Section_Router_Design import STRUCTURE_ADJUST_KEYS
carried = {*CARRY_INPUT_KEYS, *ROUTE_CARRY_KEYS, *STRUCTURE_ADJUST_KEYS}
assert not carried & {"ditch_side", "section_mode", "uphill_side", "uphill_side_source"}
for name in ("B05_Profile_Route_Save.py", "B05_Profile_Route_Save_Parts.py"):
assert "uphill" not in (ROOT / "B05_Profile" / name).read_text(encoding="utf-8")
def test_요구274_옮긴_구조물_새_자리는_지형_자동(tmp_path) -> None:
rows = _merged(tmp_path, [_fresh(36.0)]) # 35 → 36 옮김
assert rows[36.0]["uphill_side"] == "left" and "uphill_side_source" not in rows[36.0]