datarhei-dragonfork-core/app/webrtc
Zac Gaetano 07b6b43ab4 test(app/webrtc): M3 unit tests for error matrix + Register + CORS
Covers each new code path that the design's §6 table requires:
- Subscribe -> 406 on non-H264 / non-Opus offer (TestHandler_Subscribe_406OnCodecMismatch)
- Subscribe -> 503 when total cap exhausted (TestHandler_Subscribe_503OnTotalCap)
- Subscribe -> 503 when per-stream cap exhausted (TestHandler_Subscribe_503OnPerStreamCap)
- Trickle -> 404 on unknown resource (TestHandler_Trickle_404WhenUnknown)
- preflight -> 204 + CORS headers (TestHandler_PreflightCORS)
- Register installs all 5 routes (TestHandler_RegisterMountsAllRoutes)
- Close drains the index without panicking (TestHandler_Close_DrainsPeers)
- requireH264AndOpus table-driven (TestRequireH264AndOpus)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-03 11:23:55 +00:00
..
ffmpeg_args.go feat(app/webrtc): port allocator + FFmpeg arg builder 2026-04-17 09:52:09 -04:00
ffmpeg_args_test.go feat(app/webrtc): port allocator + FFmpeg arg builder 2026-04-17 09:52:09 -04:00
handler.go feat(app/webrtc): M3 robustness — error matrix, per-stream index, PATCH, CORS 2026-05-03 11:23:55 +00:00
handler_m3_test.go test(app/webrtc): M3 unit tests for error matrix + Register + CORS 2026-05-03 11:23:55 +00:00
handler_test.go feat(app/webrtc): M3 robustness — error matrix, per-stream index, PATCH, CORS 2026-05-03 11:23:55 +00:00
integration_test.go test(webrtc): add M2 integration smoke test 2026-04-17 10:11:34 -04:00
lifecycle.go feat(app/webrtc): broadcast process-stop via SetTeardownHook 2026-05-03 11:23:55 +00:00
lifecycle_test.go feat(webrtc): add app/webrtc subsystem + lifecycle hooks 2026-04-17 10:02:00 -04:00
portalloc.go feat(app/webrtc): port allocator + FFmpeg arg builder 2026-04-17 09:52:09 -04:00
portalloc_test.go feat(app/webrtc): port allocator + FFmpeg arg builder 2026-04-17 09:52:09 -04:00
subsystem.go feat(app/webrtc): broadcast process-stop via SetTeardownHook 2026-05-03 11:23:55 +00:00