@@ -54,7 +54,6 @@ class DummyClass:
5454# Import real MCP classes
5555try :
5656 from mcp import StdioServerParameters
57- from mcp .types import EmptyResult
5857except ImportError :
5958 # Create a mock if MCP is not available
6059 class StdioServerParameters :
@@ -63,9 +62,6 @@ def __init__(self, command="test_command", args=None):
6362 self .command = command
6463 self .args = args or []
6564
66- class EmptyResult :
67- pass
68-
6965
7066class MockClientSession :
7167 """Mock ClientSession for testing."""
@@ -76,7 +72,6 @@ def __init__(self):
7672 self ._read_stream ._closed = False
7773 self ._write_stream ._closed = False
7874 self .initialize = AsyncMock ()
79- self .send_ping = AsyncMock ()
8075
8176
8277class MockAsyncExitStack :
@@ -211,52 +206,19 @@ def test_merge_headers_sse(self):
211206 }
212207 assert merged == expected
213208
214- @pytest .mark .asyncio
215- async def test_is_session_disconnected_when_connected (self ):
216- """Test session disconnection detection when session is connected."""
209+ def test_is_session_disconnected (self ):
210+ """Test session disconnection detection."""
217211 manager = MCPSessionManager (self .mock_stdio_connection_params )
218- session = MockClientSession ()
219- session .send_ping .return_value = EmptyResult ()
220- assert not await manager ._is_session_disconnected (session )
221- session .send_ping .assert_called_once ()
222-
223- @pytest .mark .asyncio
224- async def test_is_session_disconnected_read_stream_closed (self ):
225- """Test session disconnection detection when read stream is closed."""
226- manager = MCPSessionManager (self .mock_stdio_connection_params )
227- session = MockClientSession ()
228- session .send_ping .return_value = EmptyResult ()
229- session ._read_stream ._closed = True
230- assert await manager ._is_session_disconnected (session )
231- session .send_ping .assert_not_called ()
232212
233- @pytest .mark .asyncio
234- async def test_is_session_disconnected_write_stream_closed (self ):
235- """Test session disconnection detection when write stream is closed."""
236- manager = MCPSessionManager (self .mock_stdio_connection_params )
213+ # Create mock session
237214 session = MockClientSession ()
238- session .send_ping .return_value = EmptyResult ()
239- session ._write_stream ._closed = True
240- assert await manager ._is_session_disconnected (session )
241- session .send_ping .assert_not_called ()
242215
243- @pytest .mark .asyncio
244- async def test_is_session_disconnected_ping_fails (self ):
245- """Test session disconnection detection when ping fails."""
246- manager = MCPSessionManager (self .mock_stdio_connection_params )
247- session = MockClientSession ()
248- session .send_ping .side_effect = Exception ("Ping failed" )
249- assert await manager ._is_session_disconnected (session )
250- session .send_ping .assert_called_once ()
216+ # Not disconnected
217+ assert not manager ._is_session_disconnected (session )
251218
252- @pytest .mark .asyncio
253- async def test_is_session_disconnected_ping_returns_wrong_result (self ):
254- """Test session disconnection detection when ping returns wrong result."""
255- manager = MCPSessionManager (self .mock_stdio_connection_params )
256- session = MockClientSession ()
257- session .send_ping .return_value = "Wrong result"
258- assert await manager ._is_session_disconnected (session )
259- session .send_ping .assert_called_once ()
219+ # Disconnected - read stream closed
220+ session ._read_stream ._closed = True
221+ assert manager ._is_session_disconnected (session )
260222
261223 @pytest .mark .asyncio
262224 async def test_create_session_stdio_new (self ):
@@ -309,7 +271,6 @@ async def test_create_session_reuse_existing(self):
309271 # Session is connected
310272 existing_session ._read_stream ._closed = False
311273 existing_session ._write_stream ._closed = False
312- existing_session .send_ping .return_value = EmptyResult ()
313274
314275 session = await manager .create_session ()
315276
0 commit comments