Something went wrong. Try again.
A human-friendly DSL for ATProto Lexicons forked from stavola.xyz/mlf
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117# MLF Test Suite# Run with: just test## Test runner: cargo-nextest. Install with `just install-tools`.
# Default: run all testsdefault: test
# Install developer tools (test runner, snapshot reviewer)install-tools: cargo install cargo-nextest --locked cargo install cargo-insta --locked
# Run every test across the workspace (excluding packages we can't build# locally). Nextest parallelises across binaries, so a single invocation# is both faster and more comprehensive than chaining the per-suite# recipes below — those remain useful for targeted runs. Use# `just test-fast` to skip network-dependent real-world tests.test: @echo "Running all workspace tests..." cargo nextest run --workspace --exclude mlf-wasm
# Run everything except network-dependent real-world roundtrip teststest-fast: @echo "Running workspace tests (excluding real-world)..." cargo nextest run --workspace --exclude mlf-wasm -E 'not binary(real_world_roundtrip)'
# Run only language tests (mlf-lang crate)test-lang: @echo "Running mlf-lang integration tests..." cargo nextest run -p mlf-lang --test integration_test
# Run codegen integration tests (multi-crate)test-codegen: @echo "\nRunning codegen integration tests..." cargo nextest run -p mlf-integration-tests --test codegen_integration
# Run diagnostics integration tests (multi-crate)test-diagnostics: @echo "\nRunning diagnostics integration tests..." cargo nextest run -p mlf-integration-tests --test diagnostics_integration
# Run lexicon fetcher teststest-lexicon-fetcher: @echo "\nRunning lexicon fetcher tests..." cargo nextest run -p mlf-lexicon-fetcher
# Run validation teststest-validation: @echo "\nRunning validation tests..." cargo nextest run -p mlf-validation
# Run CLI integration tests (when implemented)test-cli: @echo "\nRunning CLI integration tests..." cargo nextest run -p mlf-integration-tests --test cli_integration
# Run workspace resolution tests (when implemented)test-workspace: @echo "\nRunning workspace resolution tests..." cargo nextest run -p mlf-integration-tests --test workspace_integration
# Run only the network-dependent real-world round-trip teststest-real: @echo "\n🌐 Running real-world round-trip tests (fetches from network)..." cargo nextest run -p mlf-integration-tests --test real_world_roundtrip
# Review pending insta snapshot changes (accepts / rejects `.snap.new` files)review: cargo insta review
# Run tests with verbose output (stdout streamed live, tests run serially)test-verbose: cargo nextest run --workspace --exclude mlf-wasm --no-capture
# Quick check without running testscheck: cargo check --workspace
# Format codefmt: cargo fmt --all
# Run clippylint: cargo clippy --workspace
# Build everythingbuild: cargo build --workspace
# Build releasebuild-release: cargo build --workspace --release
# Clean build artifactsclean: cargo clean
# Show test statisticstest-stats: @echo "Test Statistics:" @echo " Lang tests: 21 tests in mlf-lang/tests/lang/" @echo " Codegen tests: 10 tests in tests/codegen/lexicon/" @echo " Diagnostics tests: 1 test in tests/diagnostics/" @echo " Lexicon fetcher tests: 33 tests in mlf-lexicon-fetcher/" @echo " Validation tests: 12 tests in mlf-validation" @echo "" @echo "Total integration tests: 77"
# List all test directoriestest-list: @echo "Lang tests:" @ls -1 mlf-lang/tests/lang/*/ @echo "\nCodegen tests:" @ls -1 tests/codegen/lexicon/*/