diff --git a/resources/tester/helper_287_ford_pavement.cjs b/resources/tester/helper_287_ford_pavement.cjs index fbf56b8de..124043eb7 100644 --- a/resources/tester/helper_287_ford_pavement.cjs +++ b/resources/tester/helper_287_ford_pavement.cjs @@ -95,6 +95,12 @@ const out = { pavePoints: ofClass("b06-chart__ford-pavement").map((k) => k.attrs.points), planPoints: ofClass("b06-chart__ford-deck-plan").map((k) => k.attrs.points), inflowLeft: pave.inflowLeft(tilted), + // 287-3 월류 폭 → 높이 = 세월교와 같은 풀이(유량 1.2 ㎥/s · 폭 10 m) · 유량 없으면 null(손 입력) + heightByWidth: calc.fordHeightM(1.2, 10), + heightNoFlow: calc.fordHeightM(null, 10), + paveSlopeItems: load(D("design_structure_ford_pavement.ts")) + .FORD_PAVEMENT_SPEC.containers.find((c) => c.id === "slope") + .items.map((i) => i.id), // 287-1 길이 넣음 = 월류 폭 × 길이 · 비움 = 기본값 · 폭 바꿈 = 길이 있을 때만 다시 셈 · 폭 비면 기본 폭 areaByLength: change(formOf({ width: "6" }, { length_m: "4", area: "30" }), "chute", "length_m"), areaCleared: change(formOf({ width: "6" }, { length_m: "", area: "24" }), "chute", "length_m"), diff --git a/resources/tester/test_287_ford_pavement_followup.py b/resources/tester/test_287_ford_pavement_followup.py index 94b01daa2..18af864ed 100644 --- a/resources/tester/test_287_ford_pavement_followup.py +++ b/resources/tester/test_287_ford_pavement_followup.py @@ -3,6 +3,7 @@ 못박는 것 - 287-1 도수로/돌붙임 길이 ↔ 면적 — 길이 넣음 = 월류 폭 × 길이 · 비움 = 칸 기본값 · 월류 폭을 바꾸면 길이가 있을 때만 다시 셈 · 폭이 비면 물넘이 기본 폭. + - 287-3 월류 폭 → 높이 자동 = 세월교 한 벌(`fordHeightM` · 폼 `overflow(…, "slope")`) · 유량 없으면 손 입력. - 287-2 · 287-4 콘크리트 윗면 = 설계 노면(서버 · TS 짝이 경사각도로 지대 낮은 쪽 한 경사 · 중심점이 그 위) · 포장층 = 노면공 포장 형상 노견까지(노면공 항목과 안 섞임) · 월류 높이 점선 = 노면 위 같은 각도 · 3D 노면을 파지 않음 · 설계 측구 없음. @@ -81,3 +82,12 @@ def test_3D_노면을_파지_않고_옛_파임_그림을_걷음(): assert "hideFordPavedRoad" not in pave and "fordDeckElevationAt" not in pave view = _read("B06_Section", "B06_Section_UI_Cross_View.ts") assert "hideFordPavedRoad" not in view + + +def test_월류_폭_넣으면_높이_자동_세월교_한_벌(ts): + assert ts["paveSlopeItems"] == ["angle", "width", "height"] + assert ts["heightByWidth"] and ts["heightByWidth"] > 0 + assert ts["heightNoFlow"] is None + form = _read("B05_Profile", "B05_Profile_UI_Drainage_Facility.ts") + assert 'const paveFlowBox = overflow(() => paveForm, "slope");' in form + assert 'if (facility === "ford_pavement") paveFlowBox.fill();' in form