Skip to content

Commit 2cebf08

Browse files
committed
tests
1 parent 2011579 commit 2cebf08

File tree

1 file changed

+5
-65
lines changed

1 file changed

+5
-65
lines changed

tests/server/test_streamableHttp.py

Lines changed: 5 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -301,22 +301,6 @@ def test_accept_header_validation(basic_server, server_url):
301301
assert response.status_code == 406
302302
assert "Not Acceptable" in response.text
303303

304-
# Test with only application/json
305-
response = requests.post(
306-
f"{server_url}/mcp",
307-
headers={"Accept": "application/json", "Content-Type": "application/json"},
308-
json={"jsonrpc": "2.0", "method": "initialize", "id": 1},
309-
)
310-
assert response.status_code == 406
311-
312-
# Test with only text/event-stream
313-
response = requests.post(
314-
f"{server_url}/mcp",
315-
headers={"Accept": "text/event-stream", "Content-Type": "application/json"},
316-
json={"jsonrpc": "2.0", "method": "initialize", "id": 1},
317-
)
318-
assert response.status_code == 406
319-
320304

321305
def test_content_type_validation(basic_server, server_url):
322306
"""Test that Content-Type header is properly validated."""
@@ -347,6 +331,9 @@ def test_json_validation(basic_server, server_url):
347331
assert response.status_code == 400
348332
assert "Parse error" in response.text
349333

334+
335+
def test_json_parsing(basic_server, server_url):
336+
"""Test that JSON content is properly parse."""
350337
# Test with valid JSON but invalid JSON-RPC
351338
response = requests.post(
352339
f"{server_url}/mcp",
@@ -375,24 +362,6 @@ def test_method_not_allowed(basic_server, server_url):
375362
assert "Method Not Allowed" in response.text
376363

377364

378-
def test_get_request_validation(basic_server, server_url):
379-
"""Test GET request validation for SSE streams."""
380-
381-
response = requests.post(
382-
f"{server_url}/mcp",
383-
headers={
384-
"Accept": "application/json, text/event-stream",
385-
"Content-Type": "application/json",
386-
},
387-
json=INIT_REQUEST,
388-
)
389-
# Test GET without Accept header
390-
assert response.status_code == 200
391-
response = requests.get(f"{server_url}/mcp")
392-
assert response.status_code == 406
393-
assert "Not Acceptable" in response.text
394-
395-
396365
def test_session_validation(session_server, server_url):
397366
"""Test session ID validation."""
398367
# session_id not used directly in this test
@@ -468,36 +437,7 @@ def test_streamable_http_transport_init_validation():
468437
StreamableHTTPServerTransport(mcp_session_id="test\n")
469438

470439

471-
def test_delete_request(session_server, server_url):
472-
"""Test DELETE request for session termination."""
473-
session_id = session_server
474-
475-
# First, send an initialize request to properly initialize the server
476-
response = requests.post(
477-
f"{server_url}/mcp",
478-
headers={
479-
"Accept": "application/json, text/event-stream",
480-
"Content-Type": "application/json",
481-
},
482-
json=INIT_REQUEST,
483-
)
484-
assert response.status_code == 200
485-
486-
# Test without session ID
487-
response = requests.delete(f"{server_url}/mcp")
488-
assert response.status_code == 400
489-
assert "Missing session ID" in response.text
490-
491-
# Test valid session termination
492-
response = requests.delete(
493-
f"{server_url}/mcp",
494-
headers={MCP_SESSION_ID_HEADER: session_id},
495-
)
496-
# assert response.status_code == 200
497-
assert "Session terminated" in response.text
498-
499-
500-
def test_session_termination(session_server, server_url):
440+
def test_session_termination(basic_server, server_url):
501441
"""Test session termination via DELETE and subsequent request handling."""
502442
response = requests.post(
503443
f"{server_url}/mcp",
@@ -510,7 +450,7 @@ def test_session_termination(session_server, server_url):
510450
assert response.status_code == 200
511451

512452
# Now terminate the session
513-
session_id = session_server
453+
session_id = response.headers.get(MCP_SESSION_ID_HEADER)
514454
response = requests.delete(
515455
f"{server_url}/mcp",
516456
headers={MCP_SESSION_ID_HEADER: session_id},

0 commit comments

Comments
 (0)