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."