test(v5): F2-Test ohne /proc — Nodes rekursives mkdirSync pendelt dort endlos, die Ampel hing
Ampel / ampel (push) Successful in 1m14s
Ampel / ampel (push) Successful in 1m14s
WAS: Der Test „Ablage nicht erreichbar" nimmt jetzt einen Ordner UNTER
einer Datei als Ablage (scheitert auf jeder Plattform sofort mit
ENOTDIR/EEXIST) statt /proc/rippy-nicht-da unter Linux.
WARUM: Ampel-Lauf 279 (12.09.2026) blieb in test/pipeline.test.ts
hängen: auf procfs antwortet mkdir mit ENOENT, obwohl /proc da ist —
Nodes mkdirSync({recursive:true}) läuft dann zwischen Kind und Eltern-
ordner im Kreis. Lokal (Windows) war der Lauf grün, weil Q:\ dort nicht
existiert und Node am Wurzelpfad abbricht.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
d45760018e
commit
9d16e82b5f
@@ -266,9 +266,15 @@ describe('Pipeline — Durchsicht 5.7.0', () => {
|
||||
// die Ablehnung — kein Fehler im Fenster, keine Zeile im Protokoll
|
||||
// (Sonde 10). Jetzt: eine Fehler-Meldung, keine Ausnahme.
|
||||
it('F2: Ablage nicht erreichbar → Fehler-Meldung statt stiller Ausnahme', async () => {
|
||||
// Ein Laufwerksbuchstabe, den es nicht gibt — wie eine NAS, die gerade
|
||||
// weg ist. (Unter Linux ein Ort, an dem niemand anlegen darf.)
|
||||
const weg = process.platform === 'win32' ? 'Q:\\rippy-nicht-da' : '/proc/rippy-nicht-da'
|
||||
// Ein Ordner UNTER einer Datei — anlegen scheitert sofort, auf jeder
|
||||
// Plattform (ENOTDIR bzw. EEXIST). Nicht /proc: dort antwortet mkdir mit
|
||||
// ENOENT, obwohl der Elternordner da ist, und Nodes rekursives mkdirSync
|
||||
// pendelt dann endlos — die Ampel hing daran (Lauf 279, 12.09.2026).
|
||||
const sperre = mkdtempSync(join(tmpdir(), 'rippy-sperre-'))
|
||||
wegwerf.push(sperre)
|
||||
const datei = join(sperre, 'keine-ablage.txt')
|
||||
writeFileSync(datei, 'x')
|
||||
const weg = join(datei, 'rippy-nicht-da')
|
||||
const { pipeline, meldungen, endet } = umgebung({ ablage: () => weg })
|
||||
await pipeline.starten('G', AUFTRAG)
|
||||
expect(meldungen).toHaveLength(1)
|
||||
|
||||
Reference in New Issue
Block a user