mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-04-26 01:01:40 +00:00
fix(tests): resolve 53 CI test failures across 8 root causes
1. Telegram xdist mock pollution (37 tests): Add tests/gateway/conftest.py
with a shared _ensure_telegram_mock() that runs at collection time.
Under pytest-xdist, test_telegram_caption_merge.py (bare top-level
import, no mock) would trigger the ImportError fallback in
gateway/platforms/telegram.py, caching ChatType=None and Update=Any
for the entire worker — cascading into 37 downstream failures.
2. VIRTUAL_ENV env var leak (4 tests): TestDetectVenvDir tests monkeypatched
sys.prefix but didn't clear VIRTUAL_ENV. After commit 50c35dca added a
VIRTUAL_ENV check to _detect_venv_dir(), CI's real venv leaked through.
3. Copilot base_url missing (1 test): _resolve_runtime_from_pool_entry()
set api_mode for copilot but didn't add the base_url fallback — unlike
openrouter, anthropic, and codex which all have one. Production bug.
4. Stale vision model assertion (1 test): _PROVIDER_VISION_MODELS added
zai -> glm-5v-turbo but the test still expected the main model glm-5.1.
5. Reasoning item id intentionally stripped (1 test): Production code at
run_agent.py:3738 deliberately excludes 'id' from reasoning items
(store=False causes API 404). Test was asserting the old behavior.
6. context_length warning not reaching custom_providers (1 test): The test
didn't pass base_url to AIAgent, so self.base_url was empty and the
custom_providers URL comparison at line 1302 never matched.
7. Matrix room ID URL-encoding (1 test): Production code now URL-encodes
room IDs (!room:example.com -> %21room%3Aexample.com) but the test
assertion wasn't updated.
8. Google Workspace calendar tests (2 tests): Tests assert on +agenda CLI
args that don't exist in the production calendar_list() function. They
only 'passed' before because _gws_binary() returned None, the Python
SDK fallback ran, googleapiclient import failed, SystemExit was raised,
and post-exit assertions were never reached. Skip when gws not installed.
Remaining 4 failures (test_run_progress_topics.py) are pre-existing flaky
tests that fail inconsistently under xdist — confirmed on clean main.
This commit is contained in:
parent
422f2866e6
commit
c1647dadba
8 changed files with 92 additions and 4 deletions
|
|
@ -123,7 +123,7 @@ class TestSendMatrix:
|
|||
session.put.assert_called_once()
|
||||
call_kwargs = session.put.call_args
|
||||
url = call_kwargs[0][0]
|
||||
assert url.startswith("https://matrix.example.com/_matrix/client/v3/rooms/!room:example.com/send/m.room.message/")
|
||||
assert url.startswith("https://matrix.example.com/_matrix/client/v3/rooms/%21room%3Aexample.com/send/m.room.message/")
|
||||
assert call_kwargs[1]["headers"]["Authorization"] == "Bearer syt_tok"
|
||||
payload = call_kwargs[1]["json"]
|
||||
assert payload["msgtype"] == "m.text"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue