fix: node --test bekommt explizite Dateiliste statt Verzeichnis (A11-T4 Fix-Runde 1)
tests/test_sort_js.py übergab bisher tests/js als Verzeichnis an `node --test`; unter Node 22 führt das zu MODULE_NOT_FOUND, weil Node einen Verzeichnispfad hier nicht auflöst (Fable-Fund). Fix: Testdateien per Glob (*.test.js, sortiert) einzeln übergeben. Verifiziert unter Node 22 via Podman mit exakt dieser Argumentliste: 14/14 Tests grün, 0 geskippt. Gesamtsuite unverändert bei 248 passed, 3 skipped. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,12 @@
|
||||
"""Führt die JS-Tests von static/sort.js aus, falls `node` installiert ist.
|
||||
Auf dem Host fehlt node derzeit - dann skip; das Fable-Gate führt die Tests
|
||||
per Podman aus (siehe Plan A11 Task 4, Fable-Gate)."""
|
||||
per Podman aus (siehe Plan A11 Task 4, Fable-Gate).
|
||||
|
||||
Die Testdateien werden explizit aufgelistet statt das Verzeichnis
|
||||
tests/js zu übergeben: `node --test <verzeichnis>` scheitert unter
|
||||
Node 22 mit "Cannot find module" (MODULE_NOT_FOUND), weil Node 22 einen
|
||||
Verzeichnis-Pfad nicht als Test-Root auflöst wie erwartet (Fable-Fund,
|
||||
A11-T4 Fix-Runde 1)."""
|
||||
import shutil
|
||||
import subprocess
|
||||
from pathlib import Path
|
||||
@@ -13,6 +19,7 @@ NODE = shutil.which("node")
|
||||
|
||||
@pytest.mark.skipif(NODE is None, reason="node nicht installiert")
|
||||
def test_sort_js():
|
||||
r = subprocess.run([NODE, "--test", str(ROOT / "tests" / "js")],
|
||||
files = sorted(str(p) for p in (ROOT / "tests" / "js").glob("*.test.js"))
|
||||
r = subprocess.run([NODE, "--test", *files],
|
||||
capture_output=True, text=True)
|
||||
assert r.returncode == 0, r.stdout + r.stderr
|
||||
|
||||
Reference in New Issue
Block a user