(defparameter *debug-on-failure* nil
"T if we should drop into a debugger on a failing check, NIL otherwise.")
+(defparameter *print-names* t
+ "T if we should print test running progress, NIL otherwise.")
+
(defun import-testing-symbols (package-designator)
(import '(5am::is 5am::is-true 5am::is-false 5am::signals 5am::finishes)
package-designator))
!!, !!!"))
(defmethod %run ((test test-case))
+ (when *print-names*
+ (format *debug-io* "~% Running test ~A " (name test)))
(run-resolving-dependencies test))
(defmethod %run ((tests list))
(mapc #'%run tests))
(defmethod %run ((suite test-suite))
+ (when *print-names*
+ (format *debug-io* "~%Running test suite ~A~%" (name suite)))
(let ((suite-results '()))
(flet ((run-tests ()
(loop
;;;; ** Public entry points
-(defun run! (&optional (test-spec *suite*))
+(defun run! (&optional (test-spec *suite*)
+ &key ((:print-names *print-names*) *print-names*))
"Equivalent to (explain! (run TEST-SPEC))."
(explain! (run test-spec)))
(*debug-on-failure* t))
(run! test-spec)))
-(defun run (test-spec)
+(defun run (test-spec &key ((:print-names *print-names*) *print-names*))
"Run the test specified by TEST-SPEC.
TEST-SPEC can be either a symbol naming a test or test suite, or