"""Anthropic-specific timeout tests moved from tests/hermes_cli/test_timeouts.py.""" from __future__ import annotations def test_anthropic_adapter_honors_timeout_kwarg(): """build_anthropic_client(timeout=X) overrides the 900s default read timeout.""" pytest = __import__("pytest") anthropic = pytest.importorskip("anthropic") # skip if optional SDK missing from hermes_agent_anthropic import build_anthropic_client c_default = build_anthropic_client("sk-ant-dummy", None) c_custom = build_anthropic_client("sk-ant-dummy", None, timeout=45.0) c_invalid = build_anthropic_client("sk-ant-dummy", None, timeout=-1) # Default stays at 900s; custom overrides; invalid falls back to default assert c_default.timeout.read == 900.0 assert c_custom.timeout.read == 45.0 assert c_invalid.timeout.read == 900.0 # Connect timeout always stays at 10s regardless assert c_default.timeout.connect == 10.0 assert c_custom.timeout.connect == 10.0