Skip to content
Snippets Groups Projects
Commit 7d67f76c authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

Redirect all streams to one during testing.

Avoids interspersed error output in CCL, or backtrace to terminal in SBCL.
parent 61d00892
No related branches found
No related tags found
No related merge requests found
......@@ -130,13 +130,22 @@
(ext:quit :status return)
(error "Don't know how to quit Lisp; wanting to use exit code ~a" return))
(defun finish-outputs ()
(loop :for s :in (list *standard-output* *error-output* *trace-output* *debug-io*)
:do (finish-output s)))
(defun redirect-outputs ()
(finish-outputs)
(setf *error-output* *standard-output*
*trace-output* *standard-output*))
(defun leave-lisp (message return)
(finish-outputs)
(fresh-line *error-output*)
(when message
(format *error-output* message)
(terpri *error-output*))
(finish-output *error-output*)
(finish-output *standard-output*)
(finish-outputs)
(exit-lisp return))
(defmacro assert-equal (x y)
......@@ -150,6 +159,7 @@
"Unless the environment variable DEBUG_ASDF_TEST
is bound, write a message and exit on an error. If
*asdf-test-debug* is true, enter the debugger."
(redirect-outputs)
(handler-bind
((error (lambda (c)
(format *error-output* "~&~a~&" c)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment