Skip to main content
Glama

SingleStore MCP Server

conftest.py2.9 kB
"""Common configuration and fixtures for integration tests.""" import os import pytest from unittest.mock import MagicMock, AsyncMock from src.config.config import LocalSettings, _settings_ctx, _user_id_ctx from src.analytics.manager import AnalyticsManager @pytest.fixture(scope="module", autouse=True) def mock_context(): """Create a mock Context object for testing async tools.""" context = AsyncMock() context.info = AsyncMock() context.error = AsyncMock() context.warning = AsyncMock() return context @pytest.fixture(scope="module", autouse=True) def api_key_settings(): """Create LocalSettings configured for API key authentication.""" api_key = os.getenv("MCP_API_KEY") if not api_key: pytest.skip( "MCP_API_KEY environment variable is required for integration tests" ) # Create settings with API key configuration settings = LocalSettings( api_key=api_key, transport="stdio", is_remote=False, s2_api_base_url="https://api.singlestore.com", graphql_public_endpoint="https://backend.singlestore.com/public", ) # Mock analytics manager to avoid tracking in tests settings.analytics_manager = MagicMock(spec=AnalyticsManager) settings.analytics_manager.track_event = MagicMock() return settings @pytest.fixture def mock_api_key_settings(): """Create LocalSettings configured for API key authentication with mock data.""" # Create settings with mock API key configuration settings = LocalSettings( api_key="mock_api_key_12345", transport="stdio", is_remote=False, s2_api_base_url="https://api.singlestore.com", graphql_public_endpoint="https://backend.singlestore.com/public", ) # Mock analytics manager to avoid tracking in tests settings.analytics_manager = MagicMock(spec=AnalyticsManager) settings.analytics_manager.track_event = MagicMock() return settings @pytest.fixture(scope="module", autouse=True) def mock_user_id(): """Mock user ID for testing.""" return "test-user-12345" @pytest.fixture(scope="module", autouse=True) def setup_integration_test_environment(request, api_key_settings, mock_user_id): _settings_ctx.set(api_key_settings) _user_id_ctx.set(mock_user_id) try: yield finally: _settings_ctx.set(None) _user_id_ctx.set(None) @pytest.fixture def setup_mock_integration_test_environment(mock_api_key_settings, mock_user_id): """Set up the test environment with mock settings and user ID for testing without real API key.""" # Set the settings in the context variable _settings_ctx.set(mock_api_key_settings) _user_id_ctx.set(mock_user_id) try: yield finally: # Reset the context variables after the test _settings_ctx.set(None) _user_id_ctx.set(None)

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/singlestore-labs/mcp-server-singlestore'

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