[Git][cmucl/cmucl][master] Update lisp-unit.

Raymond Toy rtoy at common-lisp.net
Sat Dec 12 17:01:45 UTC 2015


Raymond Toy pushed to branch master at cmucl / cmucl


Commits:
c91ff829 by Raymond Toy at 2015-12-12T08:51:40Z
Update lisp-unit.

- - - - -


3 changed files:

- src/contrib/lisp-unit/internal-test/example-tests.lisp
- src/contrib/lisp-unit/lisp-unit.lisp
- src/general-info/release-21b.txt


Changes:

=====================================
src/contrib/lisp-unit/internal-test/example-tests.lisp
=====================================
--- a/src/contrib/lisp-unit/internal-test/example-tests.lisp
+++ b/src/contrib/lisp-unit/internal-test/example-tests.lisp
@@ -57,6 +57,10 @@
   (dotimes (i 5)
     (assert-equal i (my-sqrt (* i i)) i)))
 
+(define-test cl-user::my-sqrt
+  (dotimes (i 5)
+    (assert-equal i (my-sqrt (* i i)) i)))
+
 ;;; Macro
 
 (defmacro my-macro (arg1 arg2)


=====================================
src/contrib/lisp-unit/lisp-unit.lisp
=====================================
--- a/src/contrib/lisp-unit/lisp-unit.lisp
+++ b/src/contrib/lisp-unit/lisp-unit.lisp
@@ -126,8 +126,9 @@ functions or even macros does not require reloading any tests.
   "If not NIL, enter the debugger when an error is encountered in an
 assertion.")
 
-(defparameter *signal-results* nil
-  "Signal the result if non NIL.")
+(defun use-debugger (&optional (flag t))
+  "Use the debugger when testing, or not."
+  (setq *use-debugger* flag))
 
 (defun use-debugger-p (condition)
   "Debug or ignore errors."
@@ -136,9 +137,8 @@ assertion.")
     (y-or-n-p "~A -- debug?" condition))
    (*use-debugger*)))
 
-(defun use-debugger (&optional (flag t))
-  "Use the debugger when testing, or not."
-  (setq *use-debugger* flag))
+(defparameter *signal-results* nil
+  "Signal the result if non NIL.")
 
 (defun signal-results (&optional (flag t))
   "Signal the results for extensibility."
@@ -238,7 +238,7 @@ assertion.")
      ((and (stringp item) (not doc) (rest body))
       (if tag
           (values doc tag (rest body))
-          (parse-body (rest body) doc tag)))
+          (parse-body (rest body) item tag)))
      (t (values doc tag body)))))
 
 (defun test-name-error-report (test-name-error stream)
@@ -260,20 +260,31 @@ assertion.")
       name
       (error 'test-name-error :datum name)))
 
+(defun test-package (name)
+  "Return the package for storing the test."
+  (multiple-value-bind (symbol status)
+      (find-symbol (symbol-name name))
+    (declare (ignore symbol))
+    (ecase status
+      ((:internal :external nil)
+       (symbol-package name))
+      (:inherited *package*))))
+
 (defmacro define-test (name &body body)
   "Store the test in the test database."
   (let ((qname (gensym "NAME-")))
     (multiple-value-bind (doc tag code) (parse-body body)
       `(let* ((,qname (valid-test-name ',name))
-              (doc (or ,doc (string ,qname))))
+              (doc (or ,doc (symbol-name ,qname)))
+              (package (test-package ,qname)))
          (setf
           ;; Unit test
-          (gethash ,qname (package-table *package* t))
+          (gethash ,qname (package-table package t))
           (make-instance 'unit-test :doc doc :code ',code))
          ;; Tags
-         (loop for tag in ',tag do
-               (pushnew
-                ,qname (gethash tag (package-tags *package* t))))
+         (loop
+          for tag in ',tag do
+          (pushnew ,qname (gethash tag (package-tags package t))))
          ;; Return the name of the test
          ,qname))))
 


=====================================
src/general-info/release-21b.txt
=====================================
--- a/src/general-info/release-21b.txt
+++ b/src/general-info/release-21b.txt
@@ -43,6 +43,7 @@ New in this release:
     * Unix support on Linux has been unified with all other OSes.
       Thus, src/code/unix-glibc2.lisp is no longer used.
     * Micro-optimize modular shifts on x86.
+    * Update lisp-unit to commit e6c259f.
 
   * ANSI compliance fixes:
 



View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/commit/c91ff8298e9007102a71242c88c005a334f6fbfb
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20151212/7cd766e8/attachment.html>


More information about the cmucl-cvs mailing list