Skip to main content
Glama
test_execute_query_tool.py1.11 kB
"""Integration-like tests for ExecuteQueryTool behavior.""" from __future__ import annotations from dataclasses import replace from unittest.mock import Mock import pytest from igloo_mcp.config import Config, SQLPermissions from igloo_mcp.mcp.tools.execute_query import ExecuteQueryTool @pytest.mark.anyio async def test_execute_query_allows_union_statement(): """UNION queries should execute when SELECT is permitted.""" config = replace(Config.from_env(), sql_permissions=SQLPermissions()) snowflake_service = Mock() query_service = Mock() tool = ExecuteQueryTool( config=config, snowflake_service=snowflake_service, query_service=query_service, health_monitor=None, ) statement = "SELECT 1 UNION SELECT 2" expected = { "statement": statement, "rowcount": 2, "rows": [[1], [2]], } tool._execute_query_sync = Mock(return_value=expected) # type: ignore[assignment] result = await tool.execute(statement=statement) assert result == expected assert tool._execute_query_sync.call_count == 1

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/Evan-Kim2028/igloo-mcp'

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