r5467: *** empty log message ***
[xlunit.git] / tcase.lisp
index 3d68142afba33e56f6b0f2cee2fc6040f6dbc77d..5761a9facbe6e6c23eba80f082254599532454ef 100644 (file)
@@ -2,7 +2,7 @@
 ;;;; *************************************************************************
 ;;;; FILE IDENTIFICATION
 ;;;;
-;;;; ID:      $Id: tcase.lisp,v 1.2 2003/08/04 19:31:34 kevin Exp $
+;;;; ID:      $Id: tcase.lisp,v 1.6 2003/08/08 00:57:20 kevin Exp $
 ;;;; Purpose: Test fixtures for XLUnit
 ;;;;
 ;;;; *************************************************************************
@@ -59,7 +59,7 @@ that the setup method did for this instance."))
 (defmethod run ((ob test) &key (handle-errors t))
   "Generalized to work on test-case and test-suites"
   (let ((res (make-test-results)))
-    (run-on-test-results ob res :handle-errors t)
+    (run-on-test-results ob res :handle-errors handle-errors)
     res))
 
 (defmethod run-on-test-results ((test test-case) result
@@ -78,14 +78,12 @@ that the setup method did for this instance."))
     (funcall (method-body test)))
 
 (defmethod run-protected ((test test-case) res &key (handle-errors t))
-  (handler-case
-      (run-base test)
-    (assertion-failed (condition)
-      (add-failure res test condition))
-    (serious-condition (condition)
-      (add-error res test condition)))
+  (if handle-errors
+      (handler-case
+         (run-base test)
+       (assertion-failed (condition)
+         (add-failure res test condition))
+       (serious-condition (condition)
+         (add-error res test condition)))
+      (run-base test))
   res)
-
-
-
-