teknium1
a44e041acf
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)
2026-03-05 18:39:37 -08:00
0xbyt4
3b745633e4
test: add unit tests for 8 untested modules (batch 3) ( #191 )
...
* test: add unit tests for 8 untested modules (batch 3)
New test files (143 tests total):
- tools/debug_helpers.py: DebugSession enable/disable, log, save, session info
- tools/skills_guard.py: scan_file, scan_skill, trust levels, install policy, structural checks
- tools/skills_sync.py: manifest read/write, skill discovery, sync logic
- gateway/sticker_cache.py: cache CRUD, sticker injection text builders
- gateway/channel_directory.py: channel resolution, display formatting, session building
- gateway/hooks.py: hook discovery, sync/async emit, wildcard matching
- gateway/mirror.py: session lookup, JSONL append, mirror_to_session
- honcho_integration/client.py: config from env/file, session name resolution, linked workspaces
Also documents a gap in skills_guard: multi-word prompt injection
variants like "ignore all prior instructions" bypass the regex scanner.
* test: strengthen sticker injection tests with exact format assertions
Replace loose "contains" checks with exact output matching for
build_sticker_injection and build_animated_sticker_injection.
Add edge cases: set_name without emoji, empty description, empty emoji.
* test: remove skills_guard gap-documenting test to avoid conflict with fix PR
2026-03-01 05:28:12 -08:00