X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=tests%2Fdatasets.lisp;h=63f1cd356dd305468e01f05d58760dec51bf6506;hb=0b757e652eda05d8d824438d925665f17e764d93;hp=114deaccccafe2a0becbba14dbe05d06515c4946;hpb=38f140427febf0a116915b013d11882c6fb767a6;p=clsql.git diff --git a/tests/datasets.lisp b/tests/datasets.lisp index 114deac..63f1cd3 100644 --- a/tests/datasets.lisp +++ b/tests/datasets.lisp @@ -20,7 +20,8 @@ should we debug (T) or just print and quit.") (when (and *dataset-debug-on-error* *debugger-hook*) (invoke-debugger e)) - (print e *error-output*) + (fresh-line *error-output*) + (princ e *error-output*) (throw 'quit-dataset e)) (defmacro def-dataset (name &body body) @@ -43,7 +44,10 @@ should we debug (T) or just print and quit.") (retry-dataset-init () :report ,(format nil "Retry dataset('~a) init: (with any dataset changes)" (symbol-name name)) - (%dataset-init ,name))) + (%dataset-init ,name)) + (skip-this-test () + :report "FAIL and run the next test" + (throw 'quit-dataset :data-set-failure))) ,@body) (%dataset-cleanup ,name)))) @@ -63,9 +67,7 @@ should we debug (T) or just print and quit.") (defun %dataset-init (name) "Run initialization code and fill database for given dataset." - (handler-bind - ((error #'generic-error)) - ;;find items that looks like '(:setup ...), + ;;find items that looks like '(:setup ...), ;; dispatch the rest. (let ((setup (rest (find :setup name :key #'first))) (sqldata (rest (find :sqldata name :key #'first))) @@ -84,7 +86,7 @@ should we debug (T) or just print and quit.") ;;presumed to be view-class objects, force them to insert. (dolist (o objdata) (setf (slot-value o 'clsql-sys::view-database) nil) - (clsql-sys:update-records-from-instance o)))))) + (clsql-sys:update-records-from-instance o))))) (defun %dataset-cleanup (name) "Run cleanup code associated with the given dataset."