Skip to main content
Glama
test_inhibitors.py2.61 kB
import sys from pathlib import Path import pytest ROOT = Path(__file__).resolve().parents[1] if str(ROOT) not in sys.path: sys.path.insert(0, str(ROOT)) from mcp_server.datasets import DatasetLoadError, load_dataset # noqa: E402 from mcp_server.inhibitors import ( # noqa: E402 find_inhibitor_plants, get_inhibitor_sources, list_inhibitors, summarize_inhibitors, ) def test_summarize_inhibitors_matches_dataset_counts(): summary = summarize_inhibitors() frame = load_dataset("all_mito_complex_I_inhibitors.txt").frame frame["known_status"] = frame["known_status"].str.lower() frame["confidence"] = frame["confidence"].str.lower() assert summary["total"] == len(frame) for status, count in summary["by_known_status"].items(): assert count == int((frame["known_status"] == status).sum()) new_frame = frame[frame["known_status"] == "new"] for confidence, count in summary["new_by_confidence"].items(): assert count == int((new_frame["confidence"] == confidence).sum()) def test_list_inhibitors_filters_by_status_and_confidence(): records = list_inhibitors(known_status="new", confidence="high", limit=5) assert len(records) <= 5 assert records, "Expected at least one high-confidence new inhibitor" for record in records: assert record["known_status"].lower() == "new" assert record["confidence"].lower() == "high" def test_list_inhibitors_invalid_status_raises(): with pytest.raises(ValueError): list_inhibitors(known_status="maybe") def test_get_inhibitor_sources_returns_pubmed_urls(): details = get_inhibitor_sources("isoflurane") assert details["compound"].lower() == "isoflurane" assert details["pubmed_ids"], "Expected PubMed IDs for isoflurane" assert details["pubmed_urls"] assert details["pubmed_urls"][0].startswith("https://pubmed.ncbi.nlm.nih.gov/") def test_get_inhibitor_sources_unknown_compound(): with pytest.raises(ValueError): get_inhibitor_sources("not_a_real_compound") def test_find_inhibitor_plants_global_returns_organisms(): result = find_inhibitor_plants("arctigenin", scope="global") assert result["scope"] == "global" assert result["match_count"] >= 1 assert "arctium lappa" in result["organisms"] def test_find_inhibitor_plants_nordic_requires_dataset(): with pytest.raises(DatasetLoadError): find_inhibitor_plants("arctigenin", scope="nordic") def test_find_inhibitor_plants_invalid_scope(): with pytest.raises(ValueError): find_inhibitor_plants("arctigenin", scope="galactic")

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/ndaniel/aurora-mcp'

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