test: add E2E server-detail tests and fill coverage gaps to 83.9%

- Add Playwright E2E for all 5 UX phases (Config/Missions/Mods/Players/Logs)
  with ServerDetailPage POM and fully mocked API routes
- Add logger.test.ts: dynamic module re-import pattern for level-gating tests
- Add useUpdateServer + useKillServer tests to useServers.test.tsx
- Add CreateServerPage edge cases: non-admin gate, API error handling, step 2 render
- Add auth.store rehydration and null-branch coverage tests
- Update FRONTEND.md, MODULES.md, API.md, README.md to reflect current state
  (167 unit tests, 38 E2E tests, 9 useServers hooks, all UX phases implemented)
This commit is contained in:
Tran G. (Revernomad) Khoa
2026-04-18 10:24:03 +07:00
parent 8bac29fb68
commit b7d670a91c
10 changed files with 606 additions and 11 deletions

View File

@@ -172,7 +172,7 @@ Renders `<App />` into `#root` with React StrictMode.
- `removeNotification(id)` for manual dismiss
### `src/hooks/useServers.ts` — Server Data Hooks
7 TanStack Query hooks: `useServers`, `useServer`, `useStartServer`, `useStopServer`, `useRestartServer`, `useCreateServer`, `useDeleteServer`
9 TanStack Query hooks: `useServers`, `useServer`, `useStartServer`, `useStopServer`, `useRestartServer`, `useCreateServer`, `useDeleteServer`, `useUpdateServer`, `useKillServer`
- `Server` interface with all fields
- `useServers` refetches every 30s
- Mutations invalidate relevant cache keys on success