@@ -266,7 +266,7 @@ async def _assert_project_state_updated(
266266 async def _received_project_update_event () -> None :
267267 assert handler .call_count == len (
268268 expected_project_state_updates
269- ), f"received { handler .call_count } of { len (expected_project_state_updates )} expected calls"
269+ ), f"received { handler .call_count } : { handler . call_args_list } of { len (expected_project_state_updates )} expected calls"
270270 if expected_project_state_updates :
271271 calls = [
272272 call (
@@ -1486,6 +1486,9 @@ async def test_open_shared_project_multiple_users(
14861486 await _state_project (base_client , shared_project , expected .ok , opened_project_state )
14871487
14881488 # now we create more users and open the same project until we reach the maximum number of user sessions
1489+ other_users : list [
1490+ tuple [UserInfoDict , TestClient , str , socketio .AsyncClient , _SocketHandlers ]
1491+ ] = []
14891492 for _ in range (1 , max_number_of_user_sessions ):
14901493 client_i = client_on_running_server_factory ()
14911494
@@ -1521,6 +1524,17 @@ async def test_open_shared_project_multiple_users(
15211524 [opened_project_state ]
15221525 * 1 , # NOTE: only one call per user since they are part of the everyone group
15231526 )
1527+ for user_j , client_j , _ , sio_j , sio_j_handlers in other_users :
1528+ # check already opened by other users which should also notify
1529+ await _assert_project_state_updated (
1530+ sio_j_handlers [SOCKET_IO_PROJECT_UPDATED_EVENT ],
1531+ shared_project ,
1532+ [opened_project_state ],
1533+ )
1534+ await _state_project (
1535+ client_j , shared_project , expected .ok , opened_project_state
1536+ )
1537+
15241538 await _assert_project_state_updated (
15251539 sio_base_handlers [SOCKET_IO_PROJECT_UPDATED_EVENT ],
15261540 shared_project ,
@@ -1533,6 +1547,7 @@ async def test_open_shared_project_multiple_users(
15331547 await _state_project (
15341548 base_client , shared_project , expected .ok , opened_project_state
15351549 )
1550+ other_users .append ((user_i , client_i , client_i_tab_id , sio_i , sio_i_handlers ))
15361551
15371552 # create an additional user, opening the project again shall raise
15381553 client_n = client_on_running_server_factory ()
@@ -1579,6 +1594,16 @@ async def test_open_shared_project_multiple_users(
15791594 shared_project ,
15801595 [opened_project_state ] * 2 ,
15811596 )
1597+ # check all the other users
1598+ for user_i , client_i , _ , sio_i , sio_i_handlers in other_users :
1599+ await _assert_project_state_updated (
1600+ sio_i_handlers [SOCKET_IO_PROJECT_UPDATED_EVENT ],
1601+ shared_project ,
1602+ [opened_project_state ],
1603+ )
1604+ await _state_project (
1605+ client_i , shared_project , expected .ok , opened_project_state
1606+ )
15821607
15831608
15841609@pytest .mark .parametrize (* standard_user_role_response ())
0 commit comments