mirror of
https://github.com/aljazceru/mcp-python-sdk.git
synced 2025-12-18 14:34:27 +01:00
33 lines
932 B
Python
33 lines
932 B
Python
import pytest
|
|
|
|
from mcp.types import (
|
|
LATEST_PROTOCOL_VERSION,
|
|
ClientRequest,
|
|
JSONRPCMessage,
|
|
JSONRPCRequest,
|
|
)
|
|
|
|
|
|
@pytest.mark.anyio
|
|
async def test_jsonrpc_request():
|
|
json_data = {
|
|
"jsonrpc": "2.0",
|
|
"id": 1,
|
|
"method": "initialize",
|
|
"params": {
|
|
"protocolVersion": LATEST_PROTOCOL_VERSION,
|
|
"capabilities": {"batch": None, "sampling": None},
|
|
"clientInfo": {"name": "mcp", "version": "0.1.0"},
|
|
},
|
|
}
|
|
|
|
request = JSONRPCMessage.model_validate(json_data)
|
|
assert isinstance(request.root, JSONRPCRequest)
|
|
ClientRequest.model_validate(request.model_dump(by_alias=True, exclude_none=True))
|
|
|
|
assert request.root.jsonrpc == "2.0"
|
|
assert request.root.id == 1
|
|
assert request.root.method == "initialize"
|
|
assert request.root.params is not None
|
|
assert request.root.params["protocolVersion"] == LATEST_PROTOCOL_VERSION
|