projects
/
fiveam.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Allow to run multiple named tests to be run at once.
[fiveam.git]
/
src
/
run.lisp
diff --git
a/src/run.lisp
b/src/run.lisp
index
3f03cfa
..
58877e0
100644
(file)
--- a/
src/run.lisp
+++ b/
src/run.lisp
@@
-131,7
+131,7
@@
run."))
(add-result 'unexpected-test-failure
:test-expr nil
:test-case test
(add-result 'unexpected-test-failure
:test-expr nil
:test-case test
- :reason (format nil "Unexpected Error: ~S." e)
+ :reason (format nil "Unexpected Error: ~S~%~A." e e)
:condition e))
(run-it ()
(let ((result-list '()))
:condition e))
(run-it ()
(let ((result-list '()))
@@
-147,7
+147,8
@@
run."))
(abort-test e)
(return-from run-it result-list)))))
(restart-case
(abort-test e)
(return-from run-it result-list)))))
(restart-case
- (funcall (test-lambda test))
+ (let ((*readtable* (copy-readtable)))
+ (funcall (test-lambda test)))
(retest ()
:report (lambda (stream)
(format stream "~@<Rerun the test ~S~@:>" test))
(retest ()
:report (lambda (stream)
(format stream "~@<Rerun the test ~S~@:>" test))
@@
-170,6
+171,9
@@
run."))
(defmethod %run ((test test-case))
(run-resolving-dependencies test))
(defmethod %run ((test test-case))
(run-resolving-dependencies test))
+(defmethod %run ((tests list))
+ (mapc #'%run tests))
+
(defmethod %run ((suite test-suite))
(let ((suite-results '()))
(bind-run-state ((result-list '()))
(defmethod %run ((suite test-suite))
(let ((suite-results '()))
(bind-run-state ((result-list '()))
@@
-194,7
+198,7
@@
run."))
;;;; ** Public entry points
;;;; ** Public entry points
-(defun run! (test-spec)
+(defun run! (&optional (test-spec *suite*))
"Equivalent to (explain (run TEST-SPEC))."
(explain! (run test-spec)))
"Equivalent to (explain (run TEST-SPEC))."
(explain! (run test-spec)))