fix: progress broadcasts now use correct WebSocket room names

- Fixed room name mismatch: ProgressService was broadcasting to
  'download_progress' but JS clients join 'downloads' room
- Added _get_room_for_progress_type() mapping function
- Updated all progress methods to use correct room names
- Added 13 new tests for room name mapping and broadcast verification
- Updated existing tests to expect correct room names
- Fixed JS clients to join valid rooms (downloads, queue, scan)
This commit is contained in:
2025-12-16 19:21:30 +01:00
parent 4c9bf6b982
commit 700f491ef9
7 changed files with 490 additions and 17 deletions

View File

@@ -352,7 +352,7 @@ class TestProgressService:
# First positional arg is ProgressEvent
call_args = mock_broadcast.call_args[0][0]
assert call_args.event_type == "download_progress"
assert call_args.room == "download_progress"
assert call_args.room == "downloads" # Room name for DOWNLOAD type
assert call_args.progress_id == "test-1"
assert call_args.progress.id == "test-1"