import sys from zbt.infrastructure.mcp.partner_resources import McpPartnerResourceClient def test_local_mcp_partner_resource_server_returns_validated_read_only_data() -> None: client = McpPartnerResourceClient(timeout_seconds=10) result = client.search(city="成都市", district="高新区", service_type="住院") assert result.available is True assert result.total == 1 assert result.items[0].institution_id == "ZBT-HOSP-CD-001" assert result.items[0].district == "高新区" def test_mcp_unavailable_returns_explicit_empty_degradation_without_fabrication() -> None: client = McpPartnerResourceClient( command=sys.executable, args=["-m", "zbt.mcp.server_does_not_exist"], timeout_seconds=2, ) result = client.search(city="成都") assert result.available is False assert result.items == [] assert result.total == 0 assert "暂时不可用" in result.message