# Testplan: Dispute Flow

## Ziel
Verifiziere, dass der Dispute-Flow korrekt implementiert ist und alle Anforderungen aus `docs/dispute-flow.md` erfüllt.

## Testfälle

### 1. Dispute erstellen
- Erstelle einen neuen Dispute mit gültigen Daten
- Überprüfe, dass der Status auf `open` gesetzt wird
- Überprüfe, dass alle benötigten Felder korrekt gespeichert werden

### 2. Evidenz hinzufügen
- Füge Evidenz zu einem bestehenden Dispute hinzu
- Überprüfe, dass der Status auf `evidence` wechselt
- Überprüfe, dass die Evidenz im `dispute_events`-Log gespeichert wird

### 3. Status ändern
- Ändere den Status eines Disputes von `open` zu `mediation`
- Überprüfe, dass der Status korrekt aktualisiert wird
- Überprüfe, dass ein Event im Log erstellt wird

### 4. Dispute auflösen
- Löse einen Dispute mit einer Entscheidung
- Überprüfe, dass der Status auf `resolved` gesetzt wird
- Überprüfe, dass alle Entscheidungsdaten korrekt gespeichert werden
- Überprüfe, dass ein Event im Log erstellt wird

### 5. Historie abrufen
- Rufe die vollständige Historie eines Disputes ab
- Überprüfe, dass alle Events in der richtigen Reihenfolge zurückgegeben werden

## Akzeptanzkriterien

- [ ] Alle Tests sind erfolgreich
- [ ] Die Implementierung entspricht dem in `docs/dispute-flow.md` beschriebenen Datenmodell
- [ ] Alle API-Endpunkte sind vollständig implementiert und dokumentiert
- [ ] Contract-Tests für Happy Path + Eskalation sind vorhanden