- 위험 채움 토큰 밝음 #e5484d → #d6363c(흰 글 3.91 → 4.72) · 어두움 5.6 · 위험 글 #c0392b 그대로 - 새 부품 계산 줄(ui_template_calc_row) — B08 수리집수면적표 b08-hydro__row · 식 칸 배치를 대신함 - 표 부품 칸 램프(ui-data-table__lamp · --only · ✓) — B08 집계표 · 거리이정표 · B09 설계내역 램프 CSS 세 벌을 걷음(표지 class 는 풍선 · 가이드용으로 남김) - 모달 넓은 중간 창(wide + width 1100px · 1100 × 680) — B09 운반 창 손 인라인 크기를 걷음 - 값 목록 규칙 꼴(rule) — ☰ 설정 규칙 줄 ul/li 를 걷음 - 접이 구역 머리(createCollapsibleHead = 패널 머리 + 접는 제목) — B08 구조물도 「조합 연결」 제목(옛 b08-sheets__title)을 대신함 - 일반 화면 틀 좁은 폭 · 입력 칸 2열 · 끝 단추 줄 — D01 · E01 이 B02 CSS 를 빌리던 것을 끊음(가이드 장면 선택자 맞춤) - 부품 모음 견본 · 지킴 시험 test_557_2 · 낡은 시험(198_1 · 247_1 · 251_1 · 257_1 · 276_1 · 551_1)은 부품 CSS · 새 class 로 맞춤 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
44 lines
1.9 KiB
Python
44 lines
1.9 KiB
Python
"""551-1 공통 값 한 벌 · 글꼴 파일 실음 — 지킴 시험."""
|
|
|
|
import re
|
|
from pathlib import Path
|
|
|
|
ROOT = Path(__file__).resolve().parents[2]
|
|
UI = ROOT / "ui_template"
|
|
THEME = (UI / "ui_template_theme.css").read_text(encoding="utf-8")
|
|
FONTS = UI / "fonts"
|
|
|
|
|
|
def test_글꼴_한_토큰_실은_파일():
|
|
assert THEME.lstrip().startswith("/*") and '@import url("./fonts/noto_sans_kr.css");' in THEME
|
|
assert THEME.index("@import") < THEME.index(":root {") # @import 는 규칙보다 앞
|
|
assert '--font-ui: "Noto Sans KR",' in THEME
|
|
assert "--font-body: var(--font-ui);" in THEME and "--font-display: var(--font-ui);" in THEME
|
|
for name in ("Inter", "Britti", "Pretendard", "Plus Jakarta"):
|
|
assert name not in THEME, name
|
|
css = (FONTS / "noto_sans_kr.css").read_text(encoding="utf-8")
|
|
files = re.findall(r'url\("\./(noto-sans-kr-\d+\.woff2)"\)', css)
|
|
assert files and len(files) == css.count("@font-face")
|
|
for f in files:
|
|
assert (FONTS / f).stat().st_size > 1000, f
|
|
assert css.count('font-family: "Noto Sans KR";') == len(files)
|
|
assert css.count("unicode-range:") == len(files)
|
|
assert "SIL OPEN FONT LICENSE Version 1.1" in (FONTS / "OFL.txt").read_text(encoding="utf-8")
|
|
assert len(css.splitlines()) <= 700
|
|
|
|
|
|
def test_옛_보라_이름은_별칭():
|
|
root = THEME[THEME.index(":root {") :]
|
|
root = root[: root.index("\n}\n")]
|
|
for old, new in (
|
|
("deep-iris", "text"),
|
|
("plum-velvet", "text"),
|
|
("royal-amethyst", "accent"),
|
|
("mist-violet", "accent-soft"),
|
|
):
|
|
assert f"--color-{old}: var(--color-{new});" in root, old
|
|
assert "--color-accent: #1f7a4d;" in root and "--color-danger: #c0392b;" in root
|
|
assert "--color-danger-fill: #d6363c;" in root # 557-2 흰 글 대비 4.5 이상
|
|
dark = THEME[THEME.index(':root[data-theme="dark"]') :]
|
|
assert "deep-iris" not in dark and "royal-amethyst" not in dark # 어두움도 별칭으로 따라옴
|