Smithery Logo
MCPsSkillsDocsPricing
Login
Smithery Logo

Accelerating the Agent Economy

Resources

DocumentationPrivacy PolicySystem Status

Company

PricingAboutBlog

Connect

© 2026 Smithery. All rights reserved.

    redisearch

    rust-tests-guidelines

    redisearch/rust-tests-guidelines
    Coding
    6,080
    5 installs

    About

    SKILL.md

    Install

    Install via Skills CLI

    or add to your agent
    • Claude Code
      Claude Code
    • Codex
      Codex
    • OpenClaw
      OpenClaw
    • Cursor
      Cursor
    • Amp
      Amp
    • GitHub Copilot
      GitHub Copilot
    • Gemini CLI
      Gemini CLI
    • Kilo Code
      Kilo Code
    • Junie
      Junie
    • Replit
      Replit
    • Windsurf
      Windsurf
    • Cline
      Cline
    • Continue
      Continue
    • OpenCode
      OpenCode
    • OpenHands
      OpenHands
    • Roo Code
      Roo Code
    • Augment
      Augment
    • Goose
      Goose
    • Trae
      Trae
    • Zencoder
      Zencoder
    • Antigravity
      Antigravity
    ├─
    ├─
    └─

    About

    Guidelines for writing Rust tests.

    SKILL.md

    Guidelines for Writing Rust Tests

    Guidelines for writing new tests for Rust code.

    Guidelines

    1. Test against the public API of the code under test.
    2. Test private APIs if and only if the private component is highly complex and difficult to test through the public API.
    3. Use insta whenever you are testing output that is difficult to predict or compare.
    4. Where appropriate, use proptest to add property-based tests for key invariants.
    5. Testing code should be written with the same care reserved to production code. Avoid unnecessary duplication, introduce helpers to reduce boilerplate and ensure readability. The intent of a test should be obvious or, if not possible, clearly documented.
    6. Do not reference exact line numbers in comments, as they may change over time.

    Code organization

    1. Put tests under the tests directory of the relevant crate if they don't rely on private APIs.
    2. The tests directory should be organized as a crate, with a main.rs file and all tests in modules. Refer to the trie_rs/tests directory as an example.
    3. If the test must rely on private APIs, co-locate them with the code they test, using a #[cfg(test)] module.

    Dealing with extern C symbols

    Check out CONTRIBUTING.md for instructions on how to deal with undefined C symbols in Rust tests.

    Recommended Servers
    OpenZeppelin
    OpenZeppelin
    Postman
    Postman
    Blockscout MCP Server
    Blockscout MCP Server
    Repository
    redisearch/redisearch
    Files