X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Frun.lisp;h=8acdd5e0c253192b36501db978b8fb1aa377d542;hb=b6071df1af85018467bdc0c612a811c8b181e554;hp=2f9d36311e050c02051ef6f7df13a923167a6c84;hpb=38ea1db6368d028601ae346b326150c56b4a33ab;p=fiveam.git diff --git a/src/run.lisp b/src/run.lisp index 2f9d363..8acdd5e 100644 --- a/src/run.lisp +++ b/src/run.lisp @@ -117,10 +117,12 @@ run.")) (defun results-status (result-list) "Given a list of test results (generated while running a test) return true if all of the results are of type TEST-PASSED, - faile otherwise." - (every (lambda (res) - (typep res 'test-passed)) - result-list)) + fail otherwise. + Returns a second value, which is the set of failed tests." + (let ((failed-tests + (remove-if #'test-passed-p result-list))) + (values (null failed-tests) + failed-tests))) (defun return-result-list (test-lambda) "Run the test function TEST-LAMBDA and return a list of all @@ -202,9 +204,7 @@ run.")) (run-tests) (run-tests))) (setf suite-results result-list - (status suite) (every (lambda (res) - (typep res 'test-passed)) - suite-results))) + (status suite) (every #'test-passed-p suite-results))) (with-run-state (result-list) (setf result-list (nconc result-list suite-results))))))) @@ -221,7 +221,7 @@ run.")) ;;;; ** Public entry points (defun run! (&optional (test-spec *suite*)) - "Equivalent to (explain (run TEST-SPEC))." + "Equivalent to (explain! (run TEST-SPEC))." (explain! (run test-spec))) (defun explain! (result-list)