check-rust-coverage について
Rust のテストでカバーされていないソース行を特定するスキルです。1つ以上の crate パスやディレクトリを受け取り、`cargo llvm-cov` の出力から未カバー行を報告します。
主な機能
- 011つ以上の crate パスに対応
- 02Rust crate を含むディレクトリに対応
- 03ファイルごとに未カバー行を報告
活用シーン
- 01Rust crate の未テスト行の特定
- 02複数 crate のカバレッジ確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ redisearch/ redisearch --skill check-rust-coverageインストール後、Claude Code で/check-rust-coverageを入力して読み込まれたか確認します。
詳細
Rust のカバレッジを確認する
Rust のテストでカバーされていない Rust の行を特定します。
引数
<path>:Rust クレートへのパスです。<path 1> <path 2>:複数のクレートへのパスです。
パスに src/ が含まれていない場合は、src/redisearch_rs ディレクトリ内のパスとみなします。たとえば、numeric_range_tree は src/redisearch_rs/numeric_range_tree になります。
パスがディレクトリを指している場合は、そのディレクトリ内のすべての Rust クレートを対象とします。
手順
次を実行して、
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
)'
対象クレート内の各ファイルについて、カバーされていない行の一覧を取得します。
コメント
Markdown 対応