I have pushed the system `fiveam-asdf`, which supports integration between ASDF and the FIVEAM test library, to the contribs directory in the ASDF repo. Please have a look.
Be warned! It is old, and not being broke, hasn't been fixed. It inappropriately is housed in the `ASDF` package and inappropriately exports extensions from that package.
But I believe it's still useful as an example of how to raise conditions when the test operation goes wrong. Catching those exceptions can be used to cause a build to fail in a CI system, typically by running lisp in batch mode and having it exit with a nonzero error code if the test operation fails.
Best, r
On 5 Jun 2018, at 4:09, Mark Evenson wrote:
We use ASDF to encapsulate the building and testing many systems under an automated test runner.
For a given system, ASDF:TEST-SYSTEM always returns boolean truth as long as the invocation of the underlying test suite succeeds.
This means there is no programatic way to provide a boolean as to whether all the tests passed or not on the invocation of a test suite to the invoker of ASDF:TEST-SYSTEM.
It seems that this issue has been raised before, as the ASDF manual documents TEST-OP https://www.common-lisp.net/project/asdf/asdf/Predefined-operations-of-ASDF.html#Predefined-operations-of-ASDF with:
The results of this operation are not defined by ASDF. It has proven difficult to define how the test operation should signal its results to the user in a way that is compatible with all of the various test libraries and test techniques in use in the community, and given the fact that ASDF operations do not return a value indicating success or failure. For those willing to go to the effort, we suggest defining conditions to signal when a test-op fails, and storing in those conditions information that describes which tests fail.
Is this still the best current practice to introspect the situation of failing tests? Can someone point me to an example implementation of this technique?
-- "A screaming comes across the sky. It has happened before but there is nothing to compare to it now."