From: Attila Lendvai <attila.lendvai@gmail.com> Date: Wed, 20 Dec 2006 15:10:18 +0000 (+0100) Subject: Added :compile-at parameter for test (:run-time :definition-time) X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=7a016e70ee47507d22a59a3c7da1b1d3740d215e;p=fiveam.git Added :compile-at parameter for test (:run-time :definition-time) --- diff --git a/src/test.lisp b/src/test.lisp index 99bc8bb..b6e85db 100644 --- a/src/test.lisp +++ b/src/test.lisp @@ -46,8 +46,9 @@ If DEPENDS-ON is a symbol it is interpreted as `(AND depending on another. SUITE defaults to the current value of *SUITE*." - (destructuring-bind (name &key depends-on (suite nil suite-supplied-p)) + (destructuring-bind (name &key depends-on (suite nil suite-supplied-p) (compile-at :run-time)) (ensure-list name) + (declare (type (member :run-time :definition-time) compile-at)) (let (description) (setf description (if (stringp (car body)) (pop body) @@ -58,8 +59,10 @@ SUITE defaults to the current value of *SUITE*." :runtime-package ,*package* :test-lambda (lambda () - (funcall (let ((*package* ,*package*)) - (compile nil '(lambda () ,@body))))) + ,@(ecase compile-at + (:run-time `((funcall (let ((*package* ,*package*)) + (compile nil '(lambda () ,@body)))))) + (:definition-time body))) :description ,description :depends-on ',depends-on)) ,(if suite-supplied-p