Check Rust Coverage

Check which Rust lines are not covered by Rust tests. Use this when you developed new Rust code and want to ensure it is tested.

RediSearch 271e2d6 1.0 KB Updated

File contents

Check Rust Coverage

Determine which Rust lines are not covered by Rust tests.

Arguments

  • <path>: Path to a Rust crate.
  • <path 1> <path 2>: Multiple crate paths.

If a path doesn't include src/, assume it to be in the src/redisearch_rs directory. E.g. numeric_range_tree becomes src/redisearch_rs/numeric_range_tree. If a path points to a directory, consider all Rust crates in that directory.

Instructions

Run

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
)'

to get the list of uncovered lines for each file in the target crate.

redisearch/redisearch/tree/main/.skills/check-rust-coverage commit 271e2d682b

Frequently asked questions

npx skillmds@latest add redisearch/check-rust-coverage