[git] CMU Common Lisp branch master updated. snapshot-2013-12-a-39-gf849f4d
Raymond Toy
rtoy at common-lisp.net
Mon Dec 23 07:07:06 UTC 2013
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMU Common Lisp".
The branch, master has been updated
via f849f4dba02f2b41d78ffe21d43be5b184aa7cdf (commit)
via 16c06cb82aa0e6b6f8866fb227dd608af4c06027 (commit)
from b3b6dce07ceb5538e89ce8c49a8bd1fe2d6a15d1 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit f849f4dba02f2b41d78ffe21d43be5b184aa7cdf
Author: Raymond Toy <toy.raymond at gmail.com>
Date: Sun Dec 22 23:06:58 2013 -0800
Simple test script to run all of the tests in the tests directory.
diff --git a/tests/run-tests.lisp b/tests/run-tests.lisp
new file mode 100644
index 0000000..0a7da54
--- /dev/null
+++ b/tests/run-tests.lisp
@@ -0,0 +1,96 @@
+;;;; -*- Mode: lisp -*-
+
+;;;; Main script to run all of the tests in the tests directory.
+;;;; It is intended to be run using something like
+;;;;
+;;;; lisp -load tests/run-tests.lisp -eval '(cmucl-test-runner:run-all-tests)'
+;;;;
+;;;; The exit code indicates whether there were any test failures. A
+;;;; non-zero code indicates a failure of some sort.
+;;;;
+;;;; It is assumed that either asdf or quicklisp is set up
+;;;; appropriately so that lisp-unit can be automatically loaded
+
+(defpackage :cmucl-test-runner
+ (:use :cl)
+ (:export #:run-all-tests
+ #:load-and-run-all-tests
+ #:print-test-results))
+
+(in-package :cmucl-test-runner)
+
+(require :lisp-unit)
+
+;; Be rather verbose in printing the tests
+(setf lisp-unit:*print-summary* t)
+(setf lisp-unit:*print-failures* t)
+(setf lisp-unit:*print-errors* t)
+
+(defvar *load-path* *load-pathname*)
+
+;; Look through all the files in the tests directory and load them.
+;; Then run all of the tests. For each file, it ia assumed that a
+;; package is created that is named with "-TESTS" appended to he
+;; pathname-name of the file.
+(defun load-and-run-all-tests ()
+ (let (test-names
+ test-results)
+ (dolist (file (directory "tests/*.lisp"))
+ (unless (equal file *load-path*)
+ (let ((basename (pathname-name file)))
+ ;; Create the package name from the pathname name so we know
+ ;; how to run the test.
+ (push (concatenate 'string (string-upcase basename) "-TESTS")
+ test-names)
+ (load file))))
+ (setf test-names (nreverse test-names))
+ (dolist (test test-names)
+ (push (lisp-unit:run-tests :all test)
+ test-results))
+ (nreverse test-results)))
+
+(defun print-test-results (results)
+ (let ((passed 0)
+ (failed 0)
+ (execute-errors 0)
+ failed-tests
+ execute-error-tests)
+ (dolist (result results)
+ (incf passed (lisp-unit::pass result))
+ (incf failed (lisp-unit::fail result))
+ (incf execute-errors (lisp-unit::exerr result))
+ (when (lisp-unit::failed-tests result)
+ (setf failed-tests
+ (append (lisp-unit::failed-tests result)
+ failed-tests)))
+ (when (lisp-unit::error-tests result)
+ (setf execute-error-tests
+ (append (lisp-unit::error-tests result)
+ execute-error-tests))))
+ (format t "~2&-------------------------------------------------~%")
+ (format t "Summary of all testsuites~2%")
+ (format t "~D testsuites were run~%" (length results))
+ (format t " ~5D tests total~%" (+ passed failed execute-errors))
+ (format t " ~5D tests failed~%" failed)
+ (format t " ~5D tests with execution errors~%" execute-errors)
+ (format t "~5,2f% of the tests passed~%"
+ (float (* 100
+ (- 1 (/ (+ failed execute-errors)
+ (+ passed failed execute-errors))))))
+ ;; Print some info about any failed tests. Then exit. We want to
+ ;; set the exit code so that any scripts runnning this can
+ ;; determine if there were any test failures.
+ (cond ((plusp (+ failed execute-errors))
+ (when failed-tests
+ (format t "~2&Failed tests: ~S~%" failed-tests))
+ (when execute-error-tests
+ (format t "~2&Execute failures: ~S~%" execute-error-tests))
+ (unix:unix-exit 1))
+ (t
+ (unix:unix-exit 0)))))
+
+(defun run-all-tests ()
+ (print-test-results (load-and-run-all-tests)))
+
+;;(run-all-tests)
+;;(quit)
commit 16c06cb82aa0e6b6f8866fb227dd608af4c06027
Author: Raymond Toy <toy.raymond at gmail.com>
Date: Sun Dec 22 23:00:04 2013 -0800
Regenerated.
diff --git a/src/i18n/locale/cmucl.pot b/src/i18n/locale/cmucl.pot
index 0c327c9..d38bc65 100644
--- a/src/i18n/locale/cmucl.pot
+++ b/src/i18n/locale/cmucl.pot
@@ -5040,9 +5040,9 @@ msgid ""
"Z may be any number, but the result is always a complex."
msgstr ""
-#: src/code/irrat-dd.lisp src/code/irrat.lisp
+#: src/code/irrat.lisp
msgid ""
-"Compute asin z = asinh(i*z)/i\n"
+"Compute asin z = -i*log(i*z + sqrt(1-z^2))\n"
"\n"
"Z may be any number, but the result is always a complex."
msgstr ""
@@ -5054,9 +5054,9 @@ msgid ""
"Z may be any number, but the result is always a complex."
msgstr ""
-#: src/code/irrat-dd.lisp src/code/irrat.lisp
+#: src/code/irrat.lisp
msgid ""
-"Compute atan z = atanh (i*z) / i\n"
+"Compute atan z = (log(1+i*z) - log(1-i*z))/(2*i)\n"
"\n"
"Z may be any number, but the result is always a complex."
msgstr ""
@@ -5116,6 +5116,20 @@ msgstr ""
msgid "Overflow"
msgstr ""
+#: src/code/irrat-dd.lisp
+msgid ""
+"Compute asin z = asinh(i*z)/i\n"
+"\n"
+"Z may be any number, but the result is always a complex."
+msgstr ""
+
+#: src/code/irrat-dd.lisp
+msgid ""
+"Compute atan z = atanh (i*z) / i\n"
+"\n"
+"Z may be any number, but the result is always a complex."
+msgstr ""
+
#: src/compiler/proclaim.lisp
msgid ""
"~S uses lambda-list keyword naming convention, but is not a recognized "
-----------------------------------------------------------------------
Summary of changes:
src/i18n/locale/cmucl.pot | 22 +++++++++--
tests/run-tests.lisp | 96 +++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 114 insertions(+), 4 deletions(-)
create mode 100644 tests/run-tests.lisp
hooks/post-receive
--
CMU Common Lisp
More information about the cmucl-cvs
mailing list