From b63aa7c261c795d4861de94f9a306fb0f5abae59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Georges=20Dup=C3=A9ron?= Date: Sun, 7 Nov 2010 04:18:49 +0100 Subject: [PATCH] Ajout de deftest-error. --- test-unitaire.lisp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/test-unitaire.lisp b/test-unitaire.lisp index 8549460..ba95986 100644 --- a/test-unitaire.lisp +++ b/test-unitaire.lisp @@ -76,6 +76,15 @@ (format t "~& comparison : ~w~&" _compare) nil)))))) +(defvar b '(x x)) +(defmacro generates-error-p (code) + `(car (handler-case (progn (push 'a b) (cons nil ,code)) + (error (e) (cons t e))))) + +(defmacro deftest-error (module test &optional (expected t)) + `(deftest ,module (generates-error-p ,test) + ,expected)) + (defmacro deftestvar (module name value) (if (arrayp value) `(test-add-variable ',module @@ -140,7 +149,9 @@ ;; (deftest (a sub-2) (eq 'x 'x) t) ;; (deftest (b sub-1) (eq 'y 'y) t) ;; (deftest c (eq 'foo 'foo) t) +;; (deftest-error c (if (eq 42 42) (error "foo") (error "bar"))) +;; Pour lancer les tests : ;; (run-tests (a sub-1) b t) ;; (run-tests ()) ;; (run-tests t)