This page is part of the web mail archives of SRFI 64 from before July 7th, 2015. The new archives for SRFI 64 contain all messages, not just those from before July 7th, 2015.
Alex Shinn wrote:
What do the test-* assertions return?
As currently specified/implemented the result is undefined.
For test cases it can be very useful to return a boolean value so that additional information can be displayed when the test fails (or errors) unexpectedly.
But why should that be part of the test suite, rather than the test runner? I.e. I would *expect* a test runner to display "additional information" when a test fails unexpectedly. I can see when debugging either a test-suite or when trying to figure out why a test failed you might want to print extra information. But in that case you'd typically edit the test suite *temporarily*, perhaps simplifing it, perhaps writing the state of variables, etc. But that's debugging, not testing: you'd change it back when you've figured it out.
The true values could be just #t or more descriptive symbols like 'pass, 'skip, 'fail, 'error.
Woould it be more useful to be able to test the most recent result. E.g. rather than (if (eq? 'fail (test-assert ...))) ... do: (test-assert ...) (if (eq? 'fail (test-result-last)) ...) or something like that. This has the advantage that you're not changing the existing test code; just adding to it. -- --Per Bothner per@xxxxxxxxxxx http://per.bothner.com/