Boots a bundled LiveView fixture app against a chosen LiveView version, drives it with Playwright in real browsers, and asserts the frozen classification (green machines green, red fixtures red, deterministic). Exits non-zero on any regression — this is the fuse.
mix live_interaction_contracts.test
mix live_interaction_contracts.test --browser chromium
mix live_interaction_contracts.test --suite combobox
mix live_interaction_contracts.test --lv "github:phoenixframework/phoenix_live_view#main"Options:
--suiteharness | cursor | combobox | dialog-adapter | popover | menu | tooltip | island (default: harness — the one with the ledger + fuse)--browserchromium | firefox | webkit (default: all three)--lvLiveView version spec (default: host project's version, else 1.2.5)--portfixture HTTP port (default per suite)
Requires elixir, node, and Playwright browsers (npx playwright install)
on PATH. Intended for only: [:dev, :test] use.