Merge commit '022eff69f' into main_laptop_1
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
"""553-5 M01 · M02 페이지 부품 옮김 지킴 시험 — 자체 변종이 부품으로 바뀐 자리 · 날 단추 · 손 모달 · 날 색 없음."""
|
||||
|
||||
import re
|
||||
from pathlib import Path
|
||||
|
||||
ROOT = Path(__file__).resolve().parents[2]
|
||||
OLD_ALIAS = re.compile(r"--color-(royal-amethyst|deep-iris|mist-violet|plum-velvet|lavender-wash)")
|
||||
RAW_COLOR = re.compile(r"#[0-9a-fA-F]{3,8}\b|\brgba?\(")
|
||||
|
||||
|
||||
def _src(folder: str, suffix: str) -> dict[str, str]:
|
||||
return {p.name: p.read_text(encoding="utf-8") for p in (ROOT / folder).glob(f"*{suffix}")}
|
||||
|
||||
|
||||
def test_m01_no_raw_buttons_or_hand_modals():
|
||||
for name, ts in _src("M01_MasterData", ".ts").items():
|
||||
# 날 단추 — 왼쪽 목록 줄(공용 ui-sidebar-row) · 목록 줄 부품 꼴 단추만 남음
|
||||
for m in re.finditer(r'el\("button", \{\s*className: "([^"]*)"', ts):
|
||||
assert "ui-sidebar-row" in m.group(1), f"{name}: 날 단추 {m.group(1)}"
|
||||
assert "document.body.append(" not in ts, f"{name}: 손 모달 — openModal 부품을 씀"
|
||||
|
||||
|
||||
def test_m01_parts_in_place():
|
||||
ts = "".join(_src("M01_MasterData", ".ts").values())
|
||||
for part in (
|
||||
"openModal(",
|
||||
"createBanner",
|
||||
"createBadge(",
|
||||
"createText(",
|
||||
"createEmpty(",
|
||||
"createIconButton(",
|
||||
):
|
||||
if part == "createBanner":
|
||||
assert (
|
||||
"ui-banner ui-banner--danger m01-master__notice" in ts
|
||||
) # 알림 띠 = 띠 알림 부품 꼴
|
||||
assert "ui-banner ui-banner--danger m01-logic__reasons" in ts
|
||||
continue
|
||||
assert part in ts, f"M01 이 부품 {part} 를 안 씀"
|
||||
assert "ui-table m01-master__grid" in ts and "ui-table-wrap m01-master__grid-wrap" in ts
|
||||
for gone in (
|
||||
"m01-logic__muted",
|
||||
"m01c__muted",
|
||||
"m01-master__muted",
|
||||
"m01-logic__tag",
|
||||
"m01-logic__bad",
|
||||
):
|
||||
assert gone not in ts, f"옛 변종 {gone} 남음"
|
||||
|
||||
|
||||
def test_m01_css_common_values_only():
|
||||
for name, css in _src("M01_MasterData", ".css").items():
|
||||
assert not OLD_ALIAS.search(css), f"{name}: 옛 보라 별칭"
|
||||
body = re.sub(r"/\*.*?\*/", "", css, flags=re.S)
|
||||
assert not RAW_COLOR.search(body), f"{name}: 날 색"
|
||||
for gone in (
|
||||
".m01-procure {",
|
||||
".m01-logic__backdrop {",
|
||||
".m01-logic__tag",
|
||||
".m01lab__pills",
|
||||
):
|
||||
assert gone not in css, f"{name}: 죽은 · 옛 CSS {gone}"
|
||||
|
||||
|
||||
def test_m02_borrowed_m01_classes_follow_parts():
|
||||
ts = "".join(_src("M02_MasterTemplete", ".ts").values())
|
||||
assert "m01-logic__muted" not in ts and "m01-master__muted" not in ts.replace("ui-text", "")
|
||||
assert 'className: "m01-master__grid"' not in ts # 빌린 표도 표 부품 꼴
|
||||
assert "ui-table m01-master__grid" in ts
|
||||
@@ -42,17 +42,18 @@ def test_공용_모달_위_고정():
|
||||
|
||||
|
||||
def test_따로_둔_모달도_위_고정():
|
||||
logic = _text("M01_MasterData/M01_MasterData_UI_Logic_Style.css")
|
||||
assert "align-items: flex-start;" in _block(logic, ".m01-logic__backdrop")
|
||||
assert "margin-top: calc((100dvh - var(--modal-max, 80vh)) / 2);" in _block(
|
||||
logic, ".m01-logic__pick"
|
||||
)
|
||||
# M01 고르기 · 복사 · 조달 창 = 모달 부품(553-5) — 위 고정은 공용 .ui-modal 이 냄
|
||||
assert "--modal-max: 90vh;" in _block(
|
||||
_text("M01_MasterData/M01_MasterData_UI_LogicLab_Style.css"), ".m01copy__sheet"
|
||||
_text("M01_MasterData/M01_MasterData_UI_LogicLab_Style.css"), ".ui-modal.m01copy__sheet"
|
||||
)
|
||||
m01 = _text("M01_MasterData/M01_MasterData_UI_Style.css")
|
||||
assert "align-items: flex-start;" in _block(m01, ".m01-procure")
|
||||
assert "margin-top: 10vh;" in _block(m01, ".m01-procure__box")
|
||||
for rel in (
|
||||
"M01_MasterData/M01_MasterData_UI_Pick.ts",
|
||||
"M01_MasterData/M01_MasterData_UI_Logic_Pick.ts",
|
||||
"M01_MasterData/M01_MasterData_UI_Logic_PickTable.ts",
|
||||
"M01_MasterData/M01_MasterData_UI_LogicLab_Copy.ts",
|
||||
):
|
||||
src = _text(rel)
|
||||
assert "openModal(" in src and "document.body.append(" not in src, rel
|
||||
b01 = _text("B01_Dashboard/B01_Dashboard_UI_Style.css") + _text(
|
||||
"B01_Dashboard/B01_Dashboard_UI_Style_Company.css"
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user