View Source MixTestInteractive.PortRunner (mix test.interactive v4.1.2)

Run the tasks in a new OS process via Ports.

On Unix-like operating systems, it runs the tests using a zombie_killer script as described in https://hexdocs.pm/elixir/Port.html#module-zombie-operating-system-processes. It also enables ANSI output mode.

On Windows, mix is run directly and ANSI mode is not enabled, as it is not always supported by Windows command processors.

Summary

Types

os_type()

@type os_type() :: {atom(), atom()}

runner()

@type runner() :: (String.t(), [String.t()], keyword() ->
               {Collectable.t(), exit_status :: non_neg_integer()})

Functions

run(config, task_args, os_type \\ :os.type(), runner \\ &System.cmd/3)

Run tests based on the current configuration.