diff --git a/A00_Common/device_context.css b/A00_Common/device_context.css index f5a52403f..6bed90047 100644 --- a/A00_Common/device_context.css +++ b/A00_Common/device_context.css @@ -32,8 +32,10 @@ html[data-touch="on"] .ui-checkbox { min-height: 44px; } -/* 좌측 패널 손잡이 — 손가락 폭 */ -html[data-touch="on"] .ui-workflow-overlay__handle--side { +/* 접힌 좌측 패널 손잡이 — 손가락 폭 · 화면 왼쪽 끝 안 */ +html[data-touch="on"] + .ui-workflow-overlay__panel--title.is-collapsed + > .ui-workflow-overlay__handle--side { width: 32px; right: -32px; } diff --git a/resources/tester/test_device_audit.py b/resources/tester/test_device_audit.py index ff82c7994..bad042ad6 100644 --- a/resources/tester/test_device_audit.py +++ b/resources/tester/test_device_audit.py @@ -220,10 +220,15 @@ def run_audit(tag: str, pages=PAGES, sizes=SIZES) -> dict: return result +def _boxes(rows): + """HTML 상자 · svg 틀만 — svg 안 선 · 글(path · g · text 등 소문자 태그)은 자료 · 날짜로 바뀌는 그림이라 뺌.""" + return [r for r in rows if r.split("|")[0].isupper() or r.startswith("svg|")] + + def layout_diff(route: str, a="before", b="after") -> int: """데스크탑 배치 서명 차이 줄 수(0 = 같음).""" - ra = json.loads((ROOT / "tmp" / f"desktop_{a}" / f"{route}.layout.json").read_text()) - rb = json.loads((ROOT / "tmp" / f"desktop_{b}" / f"{route}.layout.json").read_text()) + ra = _boxes(json.loads((ROOT / "tmp" / f"desktop_{a}" / f"{route}.layout.json").read_text())) + rb = _boxes(json.loads((ROOT / "tmp" / f"desktop_{b}" / f"{route}.layout.json").read_text())) import difflib return sum( @@ -250,11 +255,15 @@ def test_device_audit_all_pages_render_and_desktop_unchanged(): assert row["pointer"] == ("fine" if size == DESKTOP else "coarse"), (route, size) if (ROOT / "tmp" / "desktop_before2").exists(): # 차이 0 = 같은 원래 코드 두 번 재기(before · before2) 잡음 이하 - over = { - r: (layout_diff(r), layout_diff(r, "before", "before2")) - for r in PAGES - if layout_diff(r) > layout_diff(r, "before", "before2") - } + noise = {r: layout_diff(r, "before", "before2") for r in PAGES} + over = [r for r in PAGES if layout_diff(r) > noise[r]] + if over: # 불러오는 때에 따라 한 번 흔들림(B06 종단) — 그 쪽만 한 번 더 잼 + run_audit("after_retry", pages=over, sizes={DESKTOP: SIZES[DESKTOP]}) + over = { + r: layout_diff(r, "before", "after_retry") + for r in over + if layout_diff(r, "before", "after_retry") > noise[r] + } assert not over, over