mix mob.onboarding_test (mob v0.5.7)

Copy Markdown View Source

Runs the Mob onboarding integration tests, which verify that a new user can go from zero to a running app without hitting any friction that should have been caught automatically.

Usage

mix mob.onboarding_test                 # pre-device tests only (fast)
mix mob.onboarding_test --all           # all tests including post-device
mix mob.onboarding_test --only generator
mix mob.onboarding_test --only failure_modes
mix mob.onboarding_test --only pre_device
mix mob.onboarding_test --only post_device

Options

--all           Run all onboarding tests, including those that need a
                booted iOS simulator or Android emulator
--only TAG      Run only tests with this tag
--env ENV       Toolchain environment to report in output (mise|asdf|nix|brew)
--seed N        ExUnit seed (passed through to mix test)
--no-color      Disable ANSI colors in output

What this runs

Tests live in test/onboarding/ and are tagged :onboarding. They are excluded from the normal mix test run to avoid slowing down the development loop.

Sub-tags:

  • :generator — Stage 1–4: archive install, project gen, install, doctor
  • :failure_modes — All failure injection tests
  • :pre_device — Failure tests that require no simulator/emulator
  • :post_device — Failure tests that require a running simulator/emulator

Workspace isolation

Each test creates a fresh temp directory under /tmp/mob_onboarding_<id>/ with its own MIX_HOME, HEX_HOME, and MOB_CACHE_DIR. On success the workspace is deleted. On failure it is preserved and its path is printed so you can inspect logs and the generated project.