mirror of
https://github.com/PrefectHQ/fastmcp.git
synced 2026-08-21 21:14:17 +02:00
Fix remark to use the fastmcp Client.
This commit is contained in:
parent
6086fe6ab8
commit
f92abd446f
1 changed files with 39 additions and 46 deletions
|
|
@ -1,9 +1,6 @@
|
|||
"""Tests for example servers"""
|
||||
|
||||
import pytest
|
||||
from mcp.shared.memory import (
|
||||
create_connected_server_and_client_session as client_session,
|
||||
)
|
||||
from mcp.types import (
|
||||
PromptMessage,
|
||||
TextContent,
|
||||
|
|
@ -11,18 +8,19 @@ from mcp.types import (
|
|||
)
|
||||
from pydantic import AnyUrl
|
||||
|
||||
from fastmcp import Client
|
||||
|
||||
|
||||
@pytest.mark.anyio
|
||||
async def test_simple_echo():
|
||||
"""Test the simple echo server"""
|
||||
from examples.simple_echo import mcp
|
||||
|
||||
async with client_session(mcp._mcp_server) as client:
|
||||
async with Client(mcp) as client:
|
||||
result = await client.call_tool("echo", {"text": "hello"})
|
||||
assert len(result.content) == 1
|
||||
content = result.content[0]
|
||||
assert isinstance(content, TextContent)
|
||||
assert content.text == "hello"
|
||||
assert len(result) == 1
|
||||
assert isinstance(result[0], TextContent)
|
||||
assert result[0].text == "hello"
|
||||
|
||||
|
||||
@pytest.mark.anyio
|
||||
|
|
@ -30,14 +28,14 @@ async def test_complex_inputs():
|
|||
"""Test the complex inputs server"""
|
||||
from examples.complex_inputs import mcp
|
||||
|
||||
async with client_session(mcp._mcp_server) as client:
|
||||
async with Client(mcp) as client:
|
||||
tank = {"shrimp": [{"name": "bob"}, {"name": "alice"}]}
|
||||
result = await client.call_tool(
|
||||
"name_shrimp", {"tank": tank, "extra_names": ["charlie"]}
|
||||
)
|
||||
assert len(result.content) == 1
|
||||
assert isinstance(result.content[0], TextContent)
|
||||
assert result.content[0].text == '[\n "bob",\n "alice",\n "charlie"\n]'
|
||||
assert len(result) == 1
|
||||
assert isinstance(result[0], TextContent)
|
||||
assert result[0].text == '[\n "bob",\n "alice",\n "charlie"\n]'
|
||||
|
||||
|
||||
@pytest.mark.anyio
|
||||
|
|
@ -45,21 +43,19 @@ async def test_desktop(monkeypatch):
|
|||
"""Test the desktop server"""
|
||||
from examples.desktop import mcp
|
||||
|
||||
async with client_session(mcp._mcp_server) as client:
|
||||
async with Client(mcp) as client:
|
||||
# Test the add function
|
||||
result = await client.call_tool("add", {"a": 1, "b": 2})
|
||||
assert len(result.content) == 1
|
||||
content = result.content[0]
|
||||
assert isinstance(content, TextContent)
|
||||
assert content.text == "3"
|
||||
assert len(result) == 1
|
||||
assert isinstance(result[0], TextContent)
|
||||
assert result[0].text == "3"
|
||||
|
||||
async with client_session(mcp._mcp_server) as client:
|
||||
async with Client(mcp) as client:
|
||||
result = await client.read_resource(AnyUrl("greeting://rooter12"))
|
||||
assert len(result.contents) == 1
|
||||
content = result.contents[0]
|
||||
assert isinstance(content, TextResourceContents)
|
||||
assert isinstance(content.text, str)
|
||||
assert content.text == "Hello, rooter12!"
|
||||
assert len(result) == 1
|
||||
assert isinstance(result[0], TextResourceContents)
|
||||
assert isinstance(result[0].text, str)
|
||||
assert result[0].text == "Hello, rooter12!"
|
||||
|
||||
|
||||
@pytest.mark.anyio
|
||||
|
|
@ -67,33 +63,30 @@ async def test_echo():
|
|||
"""Test the echo server"""
|
||||
from examples.echo import mcp
|
||||
|
||||
async with client_session(mcp._mcp_server) as client:
|
||||
async with Client(mcp) as client:
|
||||
result = await client.call_tool("echo_tool", {"text": "hello"})
|
||||
assert len(result.content) == 1
|
||||
content = result.content[0]
|
||||
assert isinstance(content, TextContent)
|
||||
assert content.text == "hello"
|
||||
assert len(result) == 1
|
||||
assert isinstance(result[0], TextContent)
|
||||
assert result[0].text == "hello"
|
||||
|
||||
async with client_session(mcp._mcp_server) as client:
|
||||
async with Client(mcp) as client:
|
||||
result = await client.read_resource(AnyUrl("echo://static"))
|
||||
assert len(result.contents) == 1
|
||||
content = result.contents[0]
|
||||
assert isinstance(content, TextResourceContents)
|
||||
assert isinstance(content.text, str)
|
||||
assert content.text == "Echo!"
|
||||
assert len(result) == 1
|
||||
assert isinstance(result[0], TextResourceContents)
|
||||
assert isinstance(result[0].text, str)
|
||||
assert result[0].text == "Echo!"
|
||||
|
||||
async with client_session(mcp._mcp_server) as client:
|
||||
async with Client(mcp) as client:
|
||||
result = await client.read_resource(AnyUrl("echo://server42"))
|
||||
assert len(result.contents) == 1
|
||||
content = result.contents[0]
|
||||
assert isinstance(content, TextResourceContents)
|
||||
assert isinstance(content.text, str)
|
||||
assert content.text == "Echo: server42"
|
||||
assert len(result) == 1
|
||||
assert isinstance(result[0], TextResourceContents)
|
||||
assert isinstance(result[0].text, str)
|
||||
assert result[0].text == "Echo: server42"
|
||||
|
||||
async with client_session(mcp._mcp_server) as client:
|
||||
async with Client(mcp) as client:
|
||||
result = await client.get_prompt("echo", {"text": "hello"})
|
||||
assert len(result.messages) == 1
|
||||
assert isinstance(content, TextResourceContents)
|
||||
assert isinstance(result.messages[0], PromptMessage)
|
||||
assert isinstance(result.messages[0].content, TextContent)
|
||||
assert result.messages[0].content.text == "hello"
|
||||
assert len(result) == 1
|
||||
assert isinstance(result[0], PromptMessage)
|
||||
assert isinstance(result[0].content, TextContent)
|
||||
assert isinstance(result[0].content.text, str)
|
||||
assert result[0].content.text == "hello"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue