Skip to main content
Glama
test_execute_query_dml_no_result.py1.18 kB
from unittest.mock import patch import pytest from igloo_mcp.config import Config, SnowflakeConfig, SQLPermissions from igloo_mcp.mcp.tools.execute_query import ExecuteQueryTool from igloo_mcp.service_layer.query_service import QueryService from tests.helpers.fake_snowflake_connector import FakeQueryPlan, FakeSnowflakeService @pytest.mark.asyncio async def test_dml_does_not_fetch_rows(): cfg = Config( snowflake=SnowflakeConfig(profile="test"), sql_permissions=SQLPermissions(insert=True), ) service = FakeSnowflakeService( [ FakeQueryPlan( statement="INSERT INTO t VALUES (1)", rows=None, rowcount=3, sfqid="FAKE_DML_QID", ) ] ) with patch.dict("os.environ", {"IGLOO_MCP_CACHE_MODE": "refresh"}, clear=False): tool = ExecuteQueryTool(cfg, service, QueryService(context=None)) res = await tool.execute( statement="INSERT INTO t VALUES (1)", timeout_seconds=2 ) assert res["rows"] == [] assert res["rowcount"] == 3 # Comes from cursor.rowcount assert res["query_id"] == "FAKE_DML_QID"

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