I have a case when I need to check that all files in my app's test suite are compilable.
I'm trying to create a list of all files and then compile them, but it turns out I can't do it without starting ExUnit.
find apps/*/test -name "*.exs" | xargs elixirc
== Compilation error in file apps/api/test/api/request_validators/validator_test.exs ==
** (RuntimeError) cannot use ExUnit.Case without starting the ExUnit application, please call ExUnit.start() or explicitly start the :ex_unit app
expanding macro: ExUnit.Case.__using__/1
How to check that all test files are compilable without actually running tests?
The proper solution would be to indeed start
ExUnit, compile all the files and examine the outcome.That way you might also explicitly specify the error code to return.