Phase A: stub, return-split, and BOM termination on buses present on the graph; DDR/CPU/FPGA class certifiers only when that device exists. Skip without evidence. Via, pad, track, and zone stay distinct. Not DRC or FEM.
23 lines
800 B
Python
23 lines
800 B
Python
"""Project file drop zone lives under periscope/src."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from pathlib import Path
|
|
|
|
ROOT = Path(__file__).resolve().parents[1]
|
|
SRC = ROOT / "periscope" / "src" / "frontend" / "src" / "components/upload/file-upload-zone.tsx"
|
|
SKIP = ROOT / "periscope" / "src" / "frontend" / "src" / "lib" / "kicad-project-files.ts"
|
|
|
|
|
|
def test_upload_zone_is_src():
|
|
text = SRC.read_text(encoding="utf-8")
|
|
skip = SKIP.read_text(encoding="utf-8")
|
|
assert "Native Periscope overlay" not in text[:400]
|
|
assert "export function FileUploadZone" in text
|
|
assert "webkitGetAsEntry" in text
|
|
assert "webkitRelativePath" in text
|
|
assert "skipWalkDirName" in text
|
|
assert "-backups" in skip
|
|
assert "border-dashed" in text
|
|
assert "border-emerald-500/40" in text
|