I'm running SWI Prolog unit tests from the command line as per their documentation.
swipl -g run_tests -t halt <file1.plt> <file2.plt> ...
The documentation claims that multiple test files can be provided on the command line: "If you want to test multiple files, you can pass multiple ..pl files."
That's not what I'm experiencing. SWILP tests the first file but ignores the rest of the tests. I can work around this by running a script like below instead, but still, the reality doesn't seem to match the documentation.
find . -name \*.plt | xargs swipl -g run_tests -t halt
That approach loses color coding, and it's good to see red when tests failed, so I do this instead:
find . -name \*.plt | while read test_file; do
swipl -g run_tests -t halt "${test_file}"
done