Files
hunjing/backend/tests/integrations/mcp/test_mcp_client.py
T
2026-08-21 16:00:13 +08:00

45 lines
1.2 KiB
Python

"""MCP HTTP client 测试。
测试 client.py 公共函数。
"""
from app.integrations.mcp.client import _auth_headers, _parse_call_result
class TestAuthHeaders:
def test_with_token(self) -> None:
assert _auth_headers("secret") == {"Authorization": "Bearer secret"}
def test_without_token(self) -> None:
assert _auth_headers(None) == {}
class TestParseCallResult:
def test_success(self) -> None:
result = _parse_call_result(
{
"result": {
"content": [{"type": "text", "text": "结果"}],
}
}
)
assert result.ok is True
assert result.stdout == "结果"
def test_error(self) -> None:
result = _parse_call_result({"error": {"message": "出错了"}})
assert result.ok is False
assert "出错了" in result.stderr
def test_is_error_flag(self) -> None:
result = _parse_call_result(
{
"result": {
"content": [],
"isError": True,
}
}
)
assert result.ok is False
assert result.exit_code == 1