Nextest Configuration Guide

MIRR uses cargo-nextest for optimized test execution, especially for the 3000+ test suite.

Installation

cargo install cargo-nextest

Configuration

The .config/nextest.toml file configures test execution:

[store]
dir= "target/nextest"

[profile.default]
retries= 0
fail-fast= true
slow-timeout= { period = "60s", terminate-after = 2 }

[profile.ci]
retries= 1
fail-fast= false
slow-timeout= { period = "120s", terminate-after = 3 }

Test Groups

Tests are organized into groups for parallel execution:

GroupFilterTests
parsertest(parser)Parser tests
typecktest(typeck)Type checker tests
widthtest(width)Width inference tests
temporaltest(temporal)Temporal compilation tests
emittest(emit)Emitter tests
symbolictest(symbolic)Symbolic analysis tests
mape-ktest(mape_k)MAPE-K simulation tests
sexprtest(sexpr)S-expression tests
patternstest(pattern)Pattern expansion tests
integrationtest(integration)Integration tests
bootstraptest(bootstrap)Bootstrap parity tests

Usage

# Run all tests
cargo nextest run

# Run with CI profile (retries, no fail-fast)
cargo nextest run --profile ci

# Run specific test group
cargo nextest run --test-group parser

# Run specific test
cargo nextest run --test riscv_integration_tests

Performance

Tool3000+ testsTime
cargo test~120sSequential
cargo nextest~30sParallel

See Also