anchor.diff:  	 (warn "FAILURE: ~:_Test ~S: ~:_~S evaluated to ~S ~:_instead of ~:_~S."
   	       name expr value expected-value)))
     (format T "F")
  +  (when failure-thunk
  +    (funcall failure-thunk))
     (when *break-on-failure* (error 'test-failure))
     nil)
   
  
positive.code:   (flet ((handle-test-success (value)
  	   (test-success name expr value expected-value))
  	 (handle-test-failure (value condition)
  	   (test-failure name expr value expected-value condition nil)
  	   (when failure-thunk
  	     (funcall failure-thunk))))
      (restart-case 
  	(handler-bind ((error #'maybe-fail-test))
  	  (let ((value (funcall test-thunk)))
  
negative.code: (defparameter *failed-tests* '())
  (defparameter *skipped-test-count* 0)
  
  (defun test-failure (name expr value expected-value condition expected-condition failure-thunk)
    (assert (not (assoc name *failed-tests*)) nil "There is already a test named ~S." name)
    (assert (not (assoc name *passed-tests*)) nil "There is already a test named ~S." name)
    (push (cons name (list expr value expected-value)) *failed-tests*)
  