anchor.diff:      :accessor %test-cleanup-function)
      ))
   
  +(define-condition test-not-found (container-condition entity-not-found)
  +  ()
  +  (:report format-condition))
  +
  +(defmethod format-condition ((condition test-not-found)
  +                             (stream stream))
  +  (format stream
  +          "No test found for name ~S within suite ~S"
  +          (entity-condition-name condition)
  +          (object-name (container-condition-container condition))))
  +
  +
  +
   (defmethod test-setup-function ((test test))
     ;;
     ;; (values (or null function) boolean)
  
positive.code: 
  (defgeneric find-test-suite (name &optional errorp)
    (:method ((name symbol) &optional (errorp t))
      (find-object name (find-class 'test-suite) errorp)))
  
  (defgeneric remove-test-suite (instance)
    (:method ((instance test-suite))
  
negative.code:       (remove-object test suite))))
  
  (defgeneric find-test (name suite &optional errorp)
    (:method (name (suite symbol) &optional (errorp t))
      (let ((suite (find-test-suite suite)))
        (find-test name suite errorp)))
    (:method ((name symbol) (suite test-suite) &optional (errorp t))
      (with-lock-held ((%test-suite-test-lock suite))
        (let ((test (find-object name suite nil)))
          (cond
            (test (values test))
            (errorp (error 'test-not-found
                           :name name :container suite))
            (t (values nil)))))))
  
  (defgeneric map-tests (function suite)
    (:method (function (suite test-suite))
  