29 lines
1.2 KiB
Markdown
29 lines
1.2 KiB
Markdown
# Issue #180 – SPA gameplay flow evidence
|
||
|
||
## Flow log (host + player, no page reload)
|
||
|
||
1. Host opens SPA host shell and loads scoreboard (`GET /lobby/sessions/{code}/scoreboard`).
|
||
2. Host starts next round (`POST /lobby/sessions/{code}/rounds/next`).
|
||
3. Host shell refreshes session state in-place (`GET /lobby/sessions/{code}`) and clears old scoreboard/final leaderboard payloads.
|
||
4. Player shell performs periodic session refresh while online (3s cadence) and transitions from `scoreboard` to `lobby` without page reload.
|
||
5. Host finishes game (`POST /lobby/sessions/{code}/finish`) and renders final leaderboard directly in SPA shell.
|
||
6. Player shell reads `finished` state and renders final leaderboard in SPA (sorted by score).
|
||
7. Error/retry paths available:
|
||
- Host: next-round and finish-game retry buttons with explicit error feedback.
|
||
- Player: reconnect + submit retry feedback.
|
||
|
||
## Test output snapshot
|
||
|
||
Command:
|
||
|
||
```bash
|
||
cd frontend/angular
|
||
npm test -- --run src/app/features/host/host-shell.component.spec.ts src/app/features/player/player-shell.component.spec.ts
|
||
```
|
||
|
||
Result:
|
||
|
||
- `host-shell.component.spec.ts`: 6 passed
|
||
- `player-shell.component.spec.ts`: 7 passed
|
||
- Total: 13 passed, 0 failed
|