mcpField
C
check-rust-coverage

check-rust-coverage

github.com/redisearchテスト・品質6.2k63 回インストール今日更新
リポジトリ

check-rust-coverage について

Rust のテストでカバーされていないソース行を特定するスキルです。1つ以上の crate パスやディレクトリを受け取り、`cargo llvm-cov` の出力から未カバー行を報告します。

主な機能

  1. 011つ以上の crate パスに対応
  2. 02Rust crate を含むディレクトリに対応
  3. 03ファイルごとに未カバー行を報告

活用シーン

  1. 01Rust 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 クレートへのパスです。
  • <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
)'

対象クレート内の各ファイルについて、カバーされていない行の一覧を取得します。

コメント