| Child |
Name |
Tests |
Failures |
Skipped |
Duration |
Success rate |
| acceptInvite - finds first empty seat |
acceptInvite - finds first empty seat |
1 |
0 |
0 |
0.036s |
100% |
| clearError clears error state |
clearError clears error state |
1 |
0 |
0 |
0.012s |
100% |
| closeRoom - leaves voice and closes |
closeRoom - leaves voice and closes |
1 |
0 |
0 |
0.241s |
100% |
| closeRoom - no-op when not in room |
closeRoom - no-op when not in room |
1 |
0 |
0 |
0.052s |
100% |
| connection monitor - non-owner disconnect removes from seat after grace period |
connection monitor - non-owner disconnect removes from seat after grace period |
1 |
0 |
0 |
0.066s |
100% |
| connection monitor - owner disconnect does NOT trigger leaveRoom |
connection monitor - owner disconnect does NOT trigger leaveRoom |
1 |
0 |
0 |
0.021s |
100% |
| declineInvite calls cancelInvite |
declineInvite calls cancelInvite |
1 |
0 |
0 |
0.044s |
100% |
| disconnectedUserIds - cleared on cleanup via leaveRoom |
disconnectedUserIds - cleared on cleanup via leaveRoom |
1 |
0 |
0 |
0.028s |
100% |
| disconnectedUserIds - cleared on untrackRoom |
disconnectedUserIds - cleared on untrackRoom |
1 |
0 |
0 |
0.315s |
100% |
| disconnectedUserIds - cleared when user reappears |
disconnectedUserIds - cleared when user reappears |
1 |
0 |
0 |
0.022s |
100% |
| disconnectedUserIds - contains absent user during grace period |
disconnectedUserIds - contains absent user during grace period |
1 |
0 |
0 |
0.053s |
100% |
| disconnectedUserIds - initially empty |
disconnectedUserIds - initially empty |
1 |
0 |
0 |
0.017s |
100% |
| ensureSingleRoom - closes owned rooms |
ensureSingleRoom - closes owned rooms |
1 |
0 |
0 |
0.059s |
100% |
| forceMuteUser - cannot mute owner |
forceMuteUser - cannot mute owner |
1 |
0 |
0 |
0.113s |
100% |
| forceMuteUser - host cannot force-mute another host |
forceMuteUser - host cannot force-mute another host |
1 |
0 |
0 |
0.066s |
100% |
| forceMuteUser - owner can force-mute a host |
forceMuteUser - owner can force-mute a host |
1 |
0 |
0 |
0.102s |
100% |
| inviteUser - attendee is blocked |
inviteUser - attendee is blocked |
1 |
0 |
0 |
0.020s |
100% |
| inviteUser - owner can invite |
inviteUser - owner can invite |
1 |
0 |
0 |
0.033s |
100% |
| isInAnyRoom returns true when any room tracked |
isInAnyRoom returns true when any room tracked |
1 |
0 |
0 |
0.009s |
100% |
| isInRoom returns true when matching room tracked |
isInRoom returns true when matching room tracked |
1 |
0 |
0 |
0.015s |
100% |
| kickUser - cannot kick host |
kickUser - cannot kick host |
1 |
0 |
0 |
0.038s |
100% |
| kickUser - cannot kick owner |
kickUser - cannot kick owner |
1 |
0 |
0 |
0.029s |
100% |
| kickUser - host cannot kick another host |
kickUser - host cannot kick another host |
1 |
0 |
0 |
0.047s |
100% |
| kickUser - owner can kick a host |
kickUser - owner can kick a host |
1 |
0 |
0 |
0.026s |
100% |
| leaveRoom - clears active state |
leaveRoom - clears active state |
1 |
0 |
0 |
0.016s |
100% |
| leaveRoom - no-op when not in room |
leaveRoom - no-op when not in room |
1 |
0 |
0 |
0.022s |
100% |
| leaveRoom - owner alone closes room |
leaveRoom - owner alone closes room |
1 |
0 |
0 |
0.050s |
100% |
| leaveRoom - owner with others on mic sets owner away |
leaveRoom - owner with others on mic sets owner away |
1 |
0 |
0 |
0.089s |
100% |
| leaveRoom - removes presence |
leaveRoom - removes presence |
1 |
0 |
0 |
0.102s |
100% |
| leaveRoom - vacates seats and leaves voice |
leaveRoom - vacates seats and leaves voice |
1 |
0 |
0 |
0.034s |
100% |
| leaveSeat - non-owner seat calls repository |
leaveSeat - non-owner seat calls repository |
1 |
0 |
0 |
0.034s |
100% |
| leaveSeat - owner cannot leave seat 0 |
leaveSeat - owner cannot leave seat 0 |
1 |
0 |
0 |
0.039s |
100% |
| moveSeat - cannot move from owner seat |
moveSeat - cannot move from owner seat |
1 |
0 |
0 |
0.031s |
100% |
| moveSeat - occupied destination triggers swap |
moveSeat - occupied destination triggers swap |
1 |
0 |
0 |
0.043s |
100% |
| ownerReturn - only works for owner |
ownerReturn - only works for owner |
1 |
0 |
0 |
0.019s |
100% |
| ownerReturn - owner can return |
ownerReturn - owner can return |
1 |
0 |
0 |
0.028s |
100% |
| presence monitor - does not remove self |
presence monitor - does not remove self |
1 |
0 |
0 |
0.082s |
100% |
| presence monitor - does not remove user who reappears before timeout |
presence monitor - does not remove user who reappears before timeout |
1 |
0 |
0 |
0.024s |
100% |
| presence monitor - logs but does not crash when removeDisconnectedUser returns Error |
presence monitor - logs but does not crash when removeDisconnectedUser returns Error |
1 |
0 |
0 |
0.034s |
100% |
| presence monitor - no-op when all participants present |
presence monitor - no-op when all participants present |
1 |
0 |
0 |
0.056s |
100% |
| presence monitor - removes disconnected non-owner after timeout |
presence monitor - removes disconnected non-owner after timeout |
1 |
0 |
0 |
0.071s |
100% |
| presence monitor - removes multiple absent users |
presence monitor - removes multiple absent users |
1 |
0 |
0 |
0.050s |
100% |
| removeFromSeat - attendee is blocked |
removeFromSeat - attendee is blocked |
1 |
0 |
0 |
0.040s |
100% |
| removeFromSeat - cannot remove from owner seat |
removeFromSeat - cannot remove from owner seat |
1 |
0 |
0 |
0.050s |
100% |
| removeFromSeat - host cannot remove another host |
removeFromSeat - host cannot remove another host |
1 |
0 |
0 |
0.024s |
100% |
| resolveRole returns ATTENDEE for regular user |
resolveRole returns ATTENDEE for regular user |
1 |
0 |
0 |
0.016s |
100% |
| resolveRole returns HOST when userId in hostIds |
resolveRole returns HOST when userId in hostIds |
1 |
0 |
0 |
0.011s |
100% |
| resolveRole returns OWNER when userId matches ownerId |
resolveRole returns OWNER when userId matches ownerId |
1 |
0 |
0 |
0.009s |
100% |
| sendMessage - blank text is ignored |
sendMessage - blank text is ignored |
1 |
0 |
0 |
0.085s |
100% |
| sendMessage - valid text forwards to repository |
sendMessage - valid text forwards to repository |
1 |
0 |
0 |
0.542s |
100% |
| takeSeat - attendee creates request instead |
takeSeat - attendee creates request instead |
1 |
0 |
0 |
0.045s |
100% |
| takeSeat - host with requireApproval ON is blocked |
takeSeat - host with requireApproval ON is blocked |
1 |
0 |
0 |
0.032s |
100% |
| takeSeat - non-owner cannot take seat 0 |
takeSeat - non-owner cannot take seat 0 |
1 |
0 |
0 |
0.033s |
100% |
| takeSeat - occupied seat is rejected |
takeSeat - occupied seat is rejected |
1 |
0 |
0 |
0.085s |
100% |
| takeSeat - owner cannot take non-zero seat |
takeSeat - owner cannot take non-zero seat |
1 |
0 |
0 |
0.069s |
100% |
| takeSeat - owner takes seat 0 calls repository |
takeSeat - owner takes seat 0 calls repository |
1 |
0 |
0 |
0.051s |
100% |
| toggleSelfMute - allows mute when voice disconnected |
toggleSelfMute - allows mute when voice disconnected |
1 |
0 |
0 |
0.086s |
100% |
| toggleSelfMute - only works for own seat |
toggleSelfMute - only works for own seat |
1 |
0 |
0 |
0.071s |
100% |
| toggleSelfMute - rejects unmute when voice not connected |
toggleSelfMute - rejects unmute when voice not connected |
1 |
0 |
0 |
0.061s |
100% |
| toggleSelfMute - toggles mute state for own seat |
toggleSelfMute - toggles mute state for own seat |
1 |
0 |
0 |
0.132s |
100% |
| trackRoom - starts connection monitor without crashing |
trackRoom - starts connection monitor without crashing |
1 |
0 |
0 |
3.407s |
100% |
| trackRoom sets activeRoomId |
trackRoom sets activeRoomId |
1 |
0 |
0 |
0.005s |
100% |
| untrackRoom clears all state |
untrackRoom clears all state |
1 |
0 |
0 |
0.012s |
100% |
| updateTrackedRoom sets activeRoom |
updateTrackedRoom sets activeRoom |
1 |
0 |
0 |
0.037s |
100% |