Runs mix test once per supported Bolt version and prints a pass/fail
summary. All versions are attempted even if one fails; exits non-zero if
any version failed.
mix test.matrixExtra flags are forwarded to each mix test invocation:
mix test.matrix --only coreEnvironment variables:
BOLT_TCP_PORT— port for Bolt 5.x servers (defaults to 7687)BOLT_6_TCP_PORT— port for Bolt 6.x servers (defaults toBOLT_TCP_PORT)
Example with the docker-compose services (Bolt 5.x on 7687, Bolt 6.x on 7689):
BOLT_6_TCP_PORT=7689 mix test.matrix
Summary
Functions
@spec version_env( {non_neg_integer(), non_neg_integer()}, String.t(), String.t() ) :: {String.t(), String.t()}
Maps a {major, minor} version to the {version_string, port} a per-version
mix test run should use: the string form for BOLT_VERSIONS, and the Bolt 6
port for major >= 6, otherwise the default port. Pure — split out from the
System.cmd loop so it can be unit-tested.