WR

write-rust-tests

Generates comprehensive Rust tests following project guidelines. Focuses on testing public APIs and unreachable code paths.

Install

mkdir -p .claude/skills/write-rust-tests && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/1733" && unzip -o skill.zip -d .claude/skills/write-rust-tests && rm skill.zip

Installs to .claude/skills/write-rust-tests

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Write Rust tests to verify correctness of Rust code. Use this when you want to write Rust tests.
96 chars✓ has a “when” trigger
Intermediate

Key capabilities

  • Verify public API correctness
  • Test edge cases and error conditions
  • Identify branch coverage gaps
  • Validate Rust modules

How it works

It requires identifying specific uncovered code branches before writing a test, ensuring each test provides unique coverage.

Inputs & outputs

You give it
Rust source file or crate path
You get back
Rust test suite

When to use write-rust-tests

  • Writing unit tests for Rust crates
  • Testing edge cases in data structures
  • Verifying error conditions in Rust modules
  • Checking branch coverage

About this skill

Write Rust Tests

Write new Rust tests for Rust code.

Arguments

  • <path>: Path to the Rust crate or file.
  • <path 1> <path 2>: Multiple crate/file 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 files in that directory.

Guidelines

The generated tests must follow the guidelines outlined in /rust-tests-guidelines.

What to test

Ensure that all public APIs are tested thoroughly, including edge cases, error conditions and branches. Use /check-rust-coverage to determine which lines are not covered by tests.

Avoiding redundant tests

Before writing each test, explicitly identify which branch or code path it will cover that no existing test already covers. An uncovered line is not sufficient justification — ask why it is uncovered and whether it is reachable through an already-tested entry point.

Two tests are redundant if they exercise the same set of branches in the code under test. Differing only in input values that don't change control flow is not a distinct scenario.

Do not write standalone tests for:

  • Trivial trait delegationsDefault, From, or similar trait impls that are single-line delegations to an already-tested constructor, since they will be covered transitively.

After adding tests, double check that every new test covers at least one branch that no other test (existing or new) covers. Remove any that don't.

When not to use it

  • Testing trivial trait delegations
  • Writing redundant tests for existing branches

Prerequisites

Rust crate structure

Limitations

  • Must verify branch coverage via check-rust-coverage
  • Tests must cover unique branches

How it compares

It focuses on branch-level coverage and prevents redundant tests, whereas generic testing often focuses on simple functional verification.

Compared to similar skills

write-rust-tests side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
write-rust-tests (this skill)95moNo flagsIntermediate
implementing-cards72moReviewAdvanced
gen-rust16moReviewAdvanced
rocq-simulate-author16moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry