move-test-gen

Generates adversarial test suites and mutation coverage analysis for Sui Move smart contracts.

4|Updated Jul 8, 2026
One-click install
npx skills add https://github.com/mehvetero/move-test-gen --skill move-test-gen
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: move-test-gen
Source: https://github.com/mehvetero/move-test-gen/tree/main
Command: npx skills add https://github.com/mehvetero/move-test-gen --skill move-test-gen

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This skill addresses the difficulty of writing comprehensive, edge-case-aware test suites for Sui Move smart contracts, ensuring that arithmetic, access control, and state transitions are thoroughly validated.

Core Features & Use Cases

  • Adversarial Test Generation: Automatically produces #[test] and #[expected_failure] functions covering boundary values, arithmetic overflows, and access control violations.
  • Coverage Verification: Includes a deterministic coverage checker that scans for unpaired asserts and performs mutation testing to ensure the test suite actually catches injected bugs.
  • Security Linting: Detects common Sui Move security patterns like missing capability checks or unsafe integer downcasts.

Quick Start

Use the move-test-gen skill to generate edge-case tests for the source file located at sources/vault.move.

Frequently Asked Questions about move-test-gen

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate edge-case tests for Sui Move smart contracts?

To generate edge-case tests for Sui Move smart contracts, you can use a mutation-based test generator that automatically produces #[test] and #[expected_failure] functions targeting arithmetic overflows, access control violations, and state machine logic.

What is mutation testing for Sui Move and how does it improve coverage?

Mutation testing for Sui Move improves coverage by injecting bugs into smart contracts and verifying that the generated adversarial test suite actually catches them, while scanning for unpaired asserts to ensure comprehensive validation of public functions.

Do I need Sui CLI and Node.js to run Sui Move security linting and coverage checks?

Yes, you need both the Sui CLI and a Node.js environment to execute security linting, deterministic coverage checks, and mutation testing for Sui Move smart contracts.

Does Sui Move security linting detect missing capability checks and unsafe integer downcasts?

Sui Move security linting detects common security patterns like missing capability checks and unsafe integer downcasts to ensure access control and arithmetic boundaries are thoroughly validated.

What's the best way to validate access control and state machine logic in Sui Move?

The best way to validate access control and state machine logic in Sui Move is by generating adversarial test suites that target boundary values and state transitions, combined with mutation testing to verify the tests catch injected bugs.