anchor.diff:    ;; From http://testanything.org
     ;; Larry Wall's Test Anything Protocol looks like:
     ;; 1..2
  -  ;; ok 1 - inint
  +  ;; ok 1 - init
     ;; not ok 2 - read config
     (unless (null test-thunks)
  -    (format t "~&1..~S~%" (length test-thunks))
  -    (let ((total-test-count 0)
  -          (total-pass-count 0)
  -          (total-error-count 0)
  -	  (i 0))
  -      (dolist (test-thunk test-thunks)
  -        (multiple-value-bind (test-count pass-count error-count)
  -            (run-test-thunk (car test-thunk) (cadr test-thunk))
  -          (incf total-test-count test-count)
  -          (incf total-pass-count pass-count)
  -          (incf total-error-count error-count)
  -	  (incf i)
  -	  (format t "~&~Aok ~S - ~S~%"
  -		  (if (or (> error-count 0) (/= test-count pass-count)) "not " "")
  -		  i (car test-thunk))))
  +    (with-open-file (out "results.tap"
  +		     ;(format nil "~A_results.tap" (package-names test-thunks))
  +		     :direction :output
  +		     :if-exists :supersede)
  +      (format out "~&TAP version 13~%1..~S~%" (length test-thunks))
  +      (let ((total-test-count 0)
  +	    (total-pass-count 0)
  +	    (total-error-count 0)
  +	    (i 0))
  +	(dolist (test-thunk test-thunks)
  +	  (multiple-value-bind (test-count pass-count error-count)
  +	      (run-test-thunk (car test-thunk) (cadr test-thunk))
  +	    (incf total-test-count test-count)
  +	    (incf total-pass-count pass-count)
  +	    (incf total-error-count error-count)
  +	    (incf i)
  +	    (format out "~&~Aok ~S - ~S~%"
  +		    (if (or (> error-count 0) (/= test-count pass-count)) "not " "")
  +		    i (car test-thunk))))
         (unless (null (cdr test-thunks))
           (show-summary 'total total-test-count total-pass-count total-error-count))
  -      (values))))
  +      (= total-test-count total-pass-count)))))
   
   (defun run-test-thunk (*test-name* thunk)
     (if (null thunk)
  
positive.code: 
  ;;; RUN-TESTS
  
  (defmacro run-all-tests (package &rest tests)
    `(let ((*package* (find-package ',package)))
       (run-tests
        ,@(mapcar #'(lambda (test) (find-symbol (symbol-name test) package))
            tests))))
  
  (defmacro run-tests (&rest names)
    `(run-test-thunks (get-test-thunks ,(if (null names) '(get-tests *package*) `',names))))
  
negative.code:   (and (listp l1)
         (listp l2)
         (= (length l1) (length l2))
         (every #'(lambda (x1) (= (count x1 l1 :test test)
                                  (count x1 l2 :test test))) l1)))
  
  
  (provide :tap-unit-test)
  