"""재생성이 구조물(비정규) 측점을 유지하는지 — B06 반폭 확대로 구조물이 사라진 건(2026-08-23). 2026-08-28 갱신: 공급자가 라우터의 옵션 스냅샷(`_extra_stations`)에서 `run_section_generation`의 `resolve_extra_stations`(정본 파일)로 옮겨졌다. 스냅샷은 writer가 자기참조라 늘 비어 있었고(실측: 측점 4건이 화면에 있는데 DB는 `[]`), 그 값을 되먹이면 B04에서 지운 관이 부활한다. 라우터는 더 이상 공급자가 아니다. """ from B06_Section.B06_Section_Router import _regeneration_options def test_regeneration_options_keep_stored_values_and_swap_half_width(): stored = { "station_interval_m": 20.0, "cross_half_width_m": 20.0, "extra_stations": [[84.3, "배수관 1"], [159.7, "세월교"]], } options = _regeneration_options(stored, None, 25.0) assert options.cross_half_width_m == 25.0 # 요청 반폭만 교체 assert options.station_interval_m == 20.0 def test_router_is_no_longer_an_extra_station_supplier(): """옵션 스냅샷이 남아 있어도 라우터는 그것을 측점으로 되먹이지 않는다.""" stored = {"extra_stations": [[84.3, "배수관 1"]]} assert _regeneration_options(stored, None, 25.0).extra_stations == () assert _regeneration_options(None, None, 25.0).extra_stations == ()