[Improvement] Kein Testprojekt vorhanden #57

Open
opened 2026-09-09 20:17:04 +00:00 by Aceless · 1 comment
Owner

Problem

Die Solution enthaelt ausschliesslich RecipePlannerApi. Es gibt keinen einzigen Test. Fehler wie der defekte PATCH-Endpunkt fuer Spaces oder der immer leere Me-Endpunkt waeren mit minimaler Abdeckung sofort aufgefallen.

Vorschlag

  • RecipePlannerApi.Tests mit xUnit anlegen.
  • Unit-Tests fuer AuthService (Passwortpruefung, Tokeninhalt), fuer die Mapping-Extensions und fuer die Patch-Logik der Essensplan-Eintraege.
  • Integrationstests mit WebApplicationFactory und Testcontainers fuer PostgreSQL. Damit lassen sich die Berechtigungspfade (fremder Space, Viewer-Rolle, fremder Meal-Plan) direkt absichern.
  • Als erstes die Faelle abdecken, die in den anderen Issues beschrieben sind, damit die Fixes verifizierbar sind.
## Problem Die Solution enthaelt ausschliesslich `RecipePlannerApi`. Es gibt keinen einzigen Test. Fehler wie der defekte PATCH-Endpunkt fuer Spaces oder der immer leere Me-Endpunkt waeren mit minimaler Abdeckung sofort aufgefallen. ## Vorschlag - `RecipePlannerApi.Tests` mit xUnit anlegen. - Unit-Tests fuer `AuthService` (Passwortpruefung, Tokeninhalt), fuer die Mapping-Extensions und fuer die Patch-Logik der Essensplan-Eintraege. - Integrationstests mit `WebApplicationFactory` und Testcontainers fuer PostgreSQL. Damit lassen sich die Berechtigungspfade (fremder Space, Viewer-Rolle, fremder Meal-Plan) direkt absichern. - Als erstes die Faelle abdecken, die in den anderen Issues beschrieben sind, damit die Fixes verifizierbar sind.
Author
Owner

Noch offen, aber es gibt jetzt eine Grundlage.

Für die Abnahme der Änderungen habe ich eine Wegwerf-Datenbank in Docker aufgesetzt (PostgreSQL 16), Schema und Migration eingespielt und 51 End-to-End-Prüfungen über die API laufen lassen: Registrierung, Login, Me, Spaces, Rollen, Rezepte, Wochenplan, Einträge, IDOR-Versuche und Aufräumen. Alle 51 sind grün.

Das lief als Skript gegen die laufende Anwendung, nicht als Testprojekt im Repository. Der sinnvolle nächste Schritt ist genau diese Fälle als Integrationstests mit WebApplicationFactory und Testcontainers festzuhalten, dazu Unit-Tests für AuthService, die Mapping-Extensions und die Patch-Logik der Essensplan-Einträge.

Bleibt offen.


Branch backend/issue-fixes.

Noch offen, aber es gibt jetzt eine Grundlage. Für die Abnahme der Änderungen habe ich eine Wegwerf-Datenbank in Docker aufgesetzt (PostgreSQL 16), Schema und Migration eingespielt und 51 End-to-End-Prüfungen über die API laufen lassen: Registrierung, Login, Me, Spaces, Rollen, Rezepte, Wochenplan, Einträge, IDOR-Versuche und Aufräumen. Alle 51 sind grün. Das lief als Skript gegen die laufende Anwendung, nicht als Testprojekt im Repository. Der sinnvolle nächste Schritt ist genau diese Fälle als Integrationstests mit `WebApplicationFactory` und Testcontainers festzuhalten, dazu Unit-Tests für `AuthService`, die Mapping-Extensions und die Patch-Logik der Essensplan-Einträge. Bleibt offen. --- Branch `backend/issue-fixes`.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Aceless/RecipePlanner#57
No description provided.