Smithery Logo
MCPsSkillsDocsPricing
Login
NewFlame, an assistant that learns and improves. Available onTelegramSlack
    multiversx

    mvx-property-testing

    multiversx/mvx-property-testing
    Coding
    7

    About

    SKILL.md

    Install

    • Telegram
      Telegram
    • Slack
      Slack
    • 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
    • Download skill
    ├─
    ├─
    └─
    Smithery Logo

    Give agents more agency

    Resources

    DocumentationPrivacy PolicySystem Status

    Company

    PricingAboutBlog

    Connect

    © 2026 Smithery. All rights reserved.

    About

    Using fuzz tests in Rust for invariants.

    SKILL.md

    MultiversX Property Testing

    This skill guides you in using property-based testing (fuzzing) to find edge cases in Smart Contract logic.

    1. Tools

    • cargo fuzz: Standard Rust fuzzer.
    • proptest: Property testing framework for Rust.

    2. Methodology

    Defining Invariants:

    • "Total Supply MUST equal sum of all balances."
    • "User balance MUST NOT decrease if deposit fails."

    3. Implementation (RustVM)

    Write a test that:

    1. Takes random input (random amounts, random user IDs).
    2. Executes the contract logic via blockchain_mock.
    3. Asserts the invariant holds.

    4. Example

    proptest! {
        #[test]
        fn test_deposit_always_increases_balance(amount in 0u64..1_000_000u64) {
            let mut setup = Setup::new();
            setup.deposit(amount);
            assert_eq!(setup.balance(), amount);
        }
    }
    
    Recommended Servers
    GENESIS ProofRelay MCP Verifier
    GENESIS ProofRelay MCP Verifier
    bugAgent
    bugAgent
    OpenZeppelin
    OpenZeppelin
    Repository
    multiversx/mx-ai-skills
    Files