diff --git a/mcp-requirements.txt b/mcp-requirements.txt index 11f4e4fc8..0c1c2fcb6 100644 --- a/mcp-requirements.txt +++ b/mcp-requirements.txt @@ -5,4 +5,4 @@ # Or directly: pip install -r mcp-requirements.txt # ============================================================================== -fastmcp>=3.4.0 +fastmcp>=3.4.0,<4 diff --git a/tests/compute/docker/test_docker_vm.py b/tests/compute/docker/test_docker_vm.py index 7aa5abb12..10336e2b1 100644 --- a/tests/compute/docker/test_docker_vm.py +++ b/tests/compute/docker/test_docker_vm.py @@ -1327,11 +1327,10 @@ async def test_read_interface_statuses(vm): b"eth0=invalid\r\n", b"", ]) - vm.project.emit = MagicMock() + with patch.object(vm.project, "emit") as emit: + await DockerVM._read_interface_statuses(vm, reader) - await DockerVM._read_interface_statuses(vm, reader) - - assert vm.project.emit.call_args_list == [ + assert emit.call_args_list == [ call("node.interface_status", { "project_id": vm.project.id, "node_id": vm.id, @@ -1355,11 +1354,10 @@ async def test_read_interface_statuses_periodically_resynchronizes(vm): reader = MagicMock() reader.readline = AsyncMock(side_effect=[b"eth0=0x1003\n", b"eth0=0x1003\n", b""]) vm._INTERFACE_STATUS_RESYNC_INTERVAL = 0 - vm.project.emit = MagicMock() + with patch.object(vm.project, "emit") as emit: + await DockerVM._read_interface_statuses(vm, reader) - await DockerVM._read_interface_statuses(vm, reader) - - assert vm.project.emit.call_count == 2 + assert emit.call_count == 2 @pytest.mark.asyncio