diff options
Diffstat (limited to 'servers/taskwarrior/tests/conftest.py')
| -rw-r--r-- | servers/taskwarrior/tests/conftest.py | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/servers/taskwarrior/tests/conftest.py b/servers/taskwarrior/tests/conftest.py new file mode 100644 index 0000000..5a36cc1 --- /dev/null +++ b/servers/taskwarrior/tests/conftest.py @@ -0,0 +1,40 @@ +import os +import sys +from typing import TYPE_CHECKING +from unittest.mock import AsyncMock, MagicMock + +import pytest + +# Add the src directory to the Python path for testing +sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '../src'))) + +# Mock the mcp.server.remote module +mock_remote = MagicMock() +mock_remote.serve_remote = AsyncMock() +sys.modules['mcp.server.remote'] = mock_remote + +if TYPE_CHECKING: + from mcp_server_taskwarrior.server import TaskWarriorServer + +@pytest.fixture +def taskwarrior_server() -> "TaskWarriorServer": + """Create a TaskWarriorServer instance for testing.""" + from mcp_server_taskwarrior.server import TaskWarriorServer + return TaskWarriorServer() + +@pytest.fixture +def mcp_server_mock() -> MagicMock: + """Create a mock MCP Server instance with all handlers.""" + server = MagicMock() + server.list_resources = MagicMock(return_value=lambda: None) + server.read_resource = MagicMock(return_value=lambda: None) + server.list_prompts = MagicMock(return_value=lambda: None) + server.get_prompt = MagicMock(return_value=lambda: None) + server.list_tools = MagicMock(return_value=lambda: None) + server.call_tool = MagicMock(return_value=lambda: None) + server.run = AsyncMock() + server.get_capabilities = MagicMock(return_value={}) + server.request_context = MagicMock() + server.request_context.session = MagicMock() + server.request_context.session.send_resource_updated = AsyncMock() + return server |
