mcpField
C
check-rust-coverage

check-rust-coverage

github.com/redisearch测试与质量6.2k63 次安装今天更新
代码仓库

关于 check-rust-coverage

用于查找 Rust 源码中未被测试覆盖行的技能。可接收一个或多个 crate 路径及目录,并从 `cargo llvm-cov` 输出中列出未覆盖行号。

主要功能

  1. 01接收一个或多个 crate 路径
  2. 02处理包含 Rust crate 的目录
  3. 03按文件报告未覆盖行

适用场景

  1. 01定位 Rust crate 中未测试的代码行
  2. 02检查多个 crate 的覆盖情况

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/redisearch/redisearch --skill check-rust-coverage

安装后在 Claude Code 中输入/check-rust-coverage确认已加载。

详细介绍

检查 Rust 覆盖率

确定哪些 Rust 代码行未被 Rust 测试覆盖。

参数

  • <path>:Rust crate 的路径。
  • <path 1> <path 2>:多个 crate 路径。

如果路径不包含 src/,则假定其位于 src/redisearch_rs 目录中。例如,numeric_range_tree 对应 src/redisearch_rs/numeric_range_tree。 如果路径指向一个目录,则检查该目录中的所有 Rust crate。

说明

运行

cargo llvm-cov test --manifest-path <crate_directory>/Cargo.toml --quiet --json 2>/dev/null | jq -r '"Uncovered Lines:",
(.data[0].files[] |
  select(.summary.lines.percent < 100) |
  .filename as $f |
  [.segments[] | select(.[2] == 0 and .[4] == true) | .[0]] |
  unique |
  if length > 0 then "\($f): \(join(", "))" else empty end
)'

获取目标 crate 中每个文件的未覆盖代码行列表。

评论

支持 Markdown