Skip to content

v5.13.0 — Test Coverage Sprint

Choose a tag to compare

@tang-vu tang-vu released this 07 Apr 10:40
· 73 commits to main since this release

Test Coverage Sprint

67 New Tests Across 5 Test Suites

ast_all_languages.rs (22 tests)

  • Symbol extraction for all 13 languages: Python, JS, TS, Go, Rust, Java, C, C++, Ruby, PHP, C#, HTML, CSS
  • Edge cases: empty files, syntax errors, unicode content, deeply nested structures (50 levels), mixed file extensions

middleware_chain.rs (11 tests)

  • Rate limit enforcement (allows under limit, blocks at limit, allows in dry-run)
  • Validation (passes valid repo, blocks empty repo name)
  • Quality gate (passes above threshold, blocks below threshold, passes when no score)
  • Chain short-circuit behavior

task_router.rs (12 tests)

  • Task routing: Analysis, CodeGen, Review, Planning
  • Complexity-based model selection (high complexity → capable model, low complexity → cheaper model)
  • Performance/economy strategies
  • File count impact on routing

mcp_server.rs (11 tests)

  • JSON-RPC 2.0 request/response format validation
  • Error response format (code, message, data)
  • Notification format (no id field)
  • Argument validation for all tool types (get_repo_info, get_file_content, create_branch, etc.)

notifications_scheduler.rs (11 tests)

  • Slack/Discord/Telegram webhook URL format validation
  • HMAC-SHA256 signature verification (same secret = same sig, different secret = different sig)
  • Cron expression validation (valid formats, invalid field counts)
  • Scheduler config defaults and partial YAML deserialization

Stats

  • Tests: 502 → 569 (+67)
  • 0 clippy warnings
  • All existing tests continue to pass