Skip to main content
Glama
test_server.py2.2 kB
import pytest from unittest.mock import MagicMock, patch from jellyseerr_mcp.server import ping, search_media, request_media, get_request, raw_request # Mock the logger to avoid cluttering test output @pytest.fixture(autouse=True) def mock_logger(): with patch("jellyseerr_mcp.server.logger") as mock: yield mock # Mock the global _client in server.py @pytest.fixture def mock_client(): with patch("jellyseerr_mcp.server._client") as mock: yield mock def test_ping(): result = ping() assert result == { "ok": True, "service": "jellyseerr-mcp", } def test_search_media_success(mock_client): # Setup mock return value expected_data = {"results": [{"id": 1, "title": "Test Movie"}]} mock_client.search_media.return_value = expected_data # Call the function result = search_media(query="Test Movie") # Assertions assert result == expected_data mock_client.search_media.assert_called_once_with("Test Movie") def test_request_media_success(mock_client): expected_data = {"id": 1, "status": "pending"} mock_client.request_media.return_value = expected_data result = request_media(media_id=123, media_type="movie") assert result == expected_data mock_client.request_media.assert_called_once_with(media_id=123, media_type="movie") def test_get_request_success(mock_client): expected_data = {"id": 1, "media": {"title": "Test Movie"}} mock_client.get_request.return_value = expected_data result = get_request(request_id=1) assert result == expected_data mock_client.get_request.assert_called_once_with(request_id=1) def test_raw_request_success(mock_client): expected_data = {"foo": "bar"} mock_client.request.return_value = expected_data result = raw_request(method="GET", endpoint="/status", params={"a": "b"}) assert result == expected_data mock_client.request.assert_called_once_with(method="GET", endpoint="/status", params={"a": "b"}, json=None) def test_raw_request_invalid_method(mock_client): with pytest.raises(ValueError, match="Unsupported method"): raw_request(method="PATCH", endpoint="/status")

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/aserper/jellyseerr-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server