Test

Test

soniqo 170f700 1.1 KB Updated

File contents

Test

Run unit and/or E2E tests.

  • unit (default): Quick tests, no model downloads. CI-safe.
  • e2e: Full pipeline tests with real models, via scripts/test_e2e_isolated.sh — one process per E2E suite. Never use plain swift test for the full E2E suite: models accumulate in a single xctest process and can exhaust system memory (observed: machine reboot).
  • all: Both unit and E2E (unit phase once, then isolated E2E suites).
  • Any other argument: passed as --filter to swift test.
arg="${ARGUMENTS:-unit}"
case "$arg" in
  unit) swift test --skip E2E 2>&1 | tail -20 ;;
  e2e)  swift build --build-tests --disable-sandbox && ./scripts/build_mlx_metallib.sh debug && E2E_SKIP_UNIT=1 scripts/test_e2e_isolated.sh 2>&1 | tail -40 ;;
  all)  swift build --build-tests --disable-sandbox && ./scripts/build_mlx_metallib.sh debug && scripts/test_e2e_isolated.sh 2>&1 | tail -40 ;;
  *)    swift test --filter "$arg" 2>&1 | tail -20 ;;
esac

E2E test classes MUST be prefixed with E2E. Unit test classes must NOT contain E2E.

soniqo/speech-swift/tree/main/.claude/skills/test commit 170f700250

Frequently asked questions

npx skillmds@latest add soniqo/test