[Testing] Tests für Render-/Persistenz-Schicht #13

Closed
opened 2026-06-03 14:10:02 +02:00 by ferdi2go · 1 comment
Owner

Schweregrad: MEDIUM

Dateien: js/calendar.js, js/employees.js, js/history.js, js/app.js

Problem: Tests decken nur algorithm/data/excel ab. UI-Aufbau, Event-Handler und der localStorage-Pfad sind ungetestet — genau dort sitzen mehrere Bugs.

Fix: jsdom-basierte Integrationstests; mindestens Korrupt-JSON-Load und Regenerate-Verhalten.

**Schweregrad:** MEDIUM **Dateien:** `js/calendar.js`, `js/employees.js`, `js/history.js`, `js/app.js` **Problem:** Tests decken nur `algorithm`/`data`/`excel` ab. UI-Aufbau, Event-Handler und der localStorage-Pfad sind ungetestet — genau dort sitzen mehrere Bugs. **Fix:** jsdom-basierte Integrationstests; mindestens Korrupt-JSON-Load und Regenerate-Verhalten.
ferdi2go added the testingcode-qualityseverity/medium labels 2026-06-03 14:10:02 +02:00
Author
Owner

Behoben in 189bcb6: jsdom-basierte Integrationstests. render.test.mjs treibt die echte UI (Mitarbeiter anlegen, Kalender-Grid via makeDayCell, Plan generieren, manuelle Slot-Änderung, beforeunload-Flush → localStorage, Verlauf-Tab). persistence.test.mjs seedet defekten State (Mitarbeiter ohne constraints, ungültiges moderatorsPerDay) und prüft sichere Normalisierung beim Start. jsdom als einzige devDependency, node_modules gitignored, beide Suites in npm test.

Behoben in `189bcb6`: jsdom-basierte Integrationstests. `render.test.mjs` treibt die echte UI (Mitarbeiter anlegen, Kalender-Grid via `makeDayCell`, Plan generieren, manuelle Slot-Änderung, `beforeunload`-Flush → localStorage, Verlauf-Tab). `persistence.test.mjs` seedet defekten State (Mitarbeiter ohne `constraints`, ungültiges `moderatorsPerDay`) und prüft sichere Normalisierung beim Start. jsdom als einzige devDependency, `node_modules` gitignored, beide Suites in `npm test`.
Sign in to join this conversation.