X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Ftest.lisp;h=ccdcb0a49363dd3267982e6ce4a3d40c185d0caf;hb=b82a10a08a56c17d920e8a1aa42979f57ef675f1;hp=7d763d10fed8570fc2185ebd8aca39fc6b3976f7;hpb=ea24d851569099877c8aa18899c2744b5070d7e3;p=fiveam.git diff --git a/src/test.lisp b/src/test.lisp index 7d763d1..ccdcb0a 100644 --- a/src/test.lisp +++ b/src/test.lisp @@ -15,6 +15,10 @@ :documentation "Lookup table mapping test (and test suite) names to objects.") +(defun test-names () + (loop for test being the hash-keys of *test* + collect test)) + (defmacro test (name &body body) "Create a test named NAME. If NAME is a list it must be of the form: @@ -60,8 +64,13 @@ SUITE defaults to the current value of *SUITE*." ',name) `(setf (gethash ',name (tests (or *suite* (get-test 'NIL)))) ',name)) + (when *run-test-when-defined* + (run! ',name)) ',name)))) +(defvar *run-test-when-defined* nil + "When non-NIL tests are run as soon as they are defined.") + ;; Copyright (c) 2002-2003, Edward Marco Baringer ;; All rights reserved. ;;