Aura’s MVP test runner is the test CLI verb (RFC-011).
Run tests
Single file:
aura test corpus/test/smoke.aura
# monorepo: cargo run -p aura-cli -- test corpus/test/smoke.auraWhole package:
aura test corpus/multi
aura test examples/notes@test functions
Mark test entrypoints with @test. Use assert / assert_eq (and std.assert where applicable) for checks on Int, String, and Bool in the current MVP.
@test
fun adds() {
assert_eq(1 + 1, 2)
}See corpus/test/ and package-level tests under corpus/ / examples/notes for patterns that compile today.
Filtering and reports
Select tests by substring with --test-name (or its alias --filter):
aura test corpus/test/filter.aura --test-name alpha
aura test corpus/test/filter.aura --filter alpha --format jsonThe JSON report contains package timing, pass/fail/skipped counts, per-test
status, and structured failure diagnostics. Tests that are not selected are
reported as skipped.
Race detector
aura race runs the same test-shaped workflow with runtime race tracking
enabled. It accepts the same package, filter, JSON, and -- process-argument
options:
aura race corpus/test/filter.aura --format jsonDesign intent
RFC-011 describes the broader framework contract. The working path today is:
compile the package or file, discover @test functions, optionally filter them,
run them via the runtime, and report human or JSON results. Parallel workers,
JUnit/LCOV output, fixtures, and async test scheduling remain deferred.
Next
- Getting started
- Standard library
- RFC-011 — testing framework design