test: strengthen assertions across 7 test files (batch 1)

Replaced weak 'is not None' / '> 0' / 'len >= 1' assertions with
concrete value checks across the most flagged test files:

gateway/test_pairing.py (11 weak → 0):
  - Code assertions verify isinstance + len == CODE_LENGTH
  - Approval results verify dict structure + specific user_id/user_name
  - Added code2 != code1 check in rate_limit_expires

test_hermes_state.py (6 weak → 0):
  - ended_at verified as float timestamp
  - Search result counts exact (== 2, not >= 1)
  - Context verified as non-empty list
  - Export verified as dict, session ID verified

test_cli_init.py (4 weak → 0):
  - max_turns asserts exact value (60)
  - model asserts string with provider/name format

gateway/test_hooks.py (2 zero-assert tests → fixed):
  - test_no_handlers_for_event: verifies no handler registered
  - test_handler_error_does_not_propagate: verifies handler count + return

gateway/test_platform_base.py (9 weak image tests → fixed):
  - extract_images tests now verify actual URL and alt_text
  - truncate_message verifies content preservation after splitting

cron/test_scheduler.py (1 weak → 0):
  - resolve_origin verifies dict equality, not just existence

cron/test_jobs.py (2 weak → 0 + 4 new tests):
  - Schedule parsing verifies ISO timestamp type
  - Cron expression verifies result is valid datetime string
  - NEW: 4 tests for update_job() (was completely untested)
This commit is contained in:
teknium1 2026-03-05 18:39:37 -08:00
parent e9f05b3524
commit a44e041acf
7 changed files with 115 additions and 28 deletions

View file

@ -177,8 +177,10 @@ class TestEmit:
@pytest.mark.asyncio
async def test_no_handlers_for_event(self, tmp_path):
reg = HookRegistry()
# Should not raise
await reg.emit("unknown:event", {})
# Should not raise and should have no handlers registered
result = await reg.emit("unknown:event", {})
assert result is None
assert not reg._handlers.get("unknown:event")
@pytest.mark.asyncio
async def test_handler_error_does_not_propagate(self, tmp_path):
@ -190,8 +192,10 @@ class TestEmit:
with patch("gateway.hooks.HOOKS_DIR", tmp_path):
reg.discover_and_load()
assert len(reg._handlers.get("agent:start", [])) == 1
# Should not raise even though handler throws
await reg.emit("agent:start", {})
result = await reg.emit("agent:start", {})
assert result is None
@pytest.mark.asyncio
async def test_emit_default_context(self, tmp_path):