From 9f29c03145c7fdefc5f54939d67ee8e00cd85f14 Mon Sep 17 00:00:00 2001 From: Juho Snellman Date: Thu, 26 Jan 2006 23:06:04 +0000 Subject: [PATCH] 0.9.9.2: Test cleanups. * Mark some tests as expected to fail on various platforms, based on information from test reports on sbcl-devel * Disable the failing external-format test completely, since it was sometimes failing in unexpected ways due to WITH-TIMEOUT races * Try to avoid running TEST-BIG-BIT-VECTORS on platforms where the big vector doesn't fit into the dynamic space --- tests/bit-vector.impure-cload.lisp | 16 +++++++++++++--- tests/debug.impure.lisp | 16 +++++++++------- tests/external-format.impure.lisp | 7 +++++++ tests/float.pure.lisp | 4 ++-- version.lisp-expr | 2 +- 5 files changed, 32 insertions(+), 13 deletions(-) diff --git a/tests/bit-vector.impure-cload.lisp b/tests/bit-vector.impure-cload.lisp index 7809cc1..2b22e32 100644 --- a/tests/bit-vector.impure-cload.lisp +++ b/tests/bit-vector.impure-cload.lisp @@ -78,7 +78,17 @@ (test-small-bit-vectors) -#-x86-64 -;; except on machines where addressable space is likely to be -;; much bigger than physical memory +(eval-when (:compile-toplevel :load-toplevel :execute) + (defun dynamic-space-size () + #+gencgc + (- sb-vm:dynamic-space-end sb-vm:dynamic-space-start) + #-gencgc + (- sb-vm:dynamic-space-0-end sb-vm:dynamic-space-0-start))) + +;; except on machines where the arrays won't fit into the dynamic space. +#+#.(cl:if (cl:> (cl-user::dynamic-space-size) + (cl:truncate (cl:1- cl:array-dimension-limit) + sb-vm:n-word-bits)) + '(and) + '(or)) (test-big-bit-vectors) diff --git a/tests/debug.impure.lisp b/tests/debug.impure.lisp index fa1e64d..a945291 100644 --- a/tests/debug.impure.lisp +++ b/tests/debug.impure.lisp @@ -190,7 +190,7 @@ (list '(flet test) #'not-optimized)))))) (with-test (:name (:throw :no-such-tag) - :fails-on '(or (and :x86 :linux) :alpha :mips)) + :fails-on '(or (and :x86 :linux) (and :x86 :freebsd) :alpha :mips)) (progn (defun throw-test () (throw 'no-such-tag t)) @@ -349,12 +349,14 @@ ;;; suspicions that the breakpoint trace might corrupt the whole image ;;; on that platform. #-(and ppc darwin) -(let ((out (with-output-to-string (*trace-output*) - (trace trace-this :encapsulate nil) - (assert (eq 'ok (trace-this))) - (untrace)))) - (assert (search "TRACE-THIS" out)) - (assert (search "returned OK" out))) +(with-test (:name (trace :encapsulate nil) + :fails-on '(or ppc sparc)) + (let ((out (with-output-to-string (*trace-output*) + (trace trace-this :encapsulate nil) + (assert (eq 'ok (trace-this))) + (untrace)))) + (assert (search "TRACE-THIS" out)) + (assert (search "returned OK" out)))) ;;;; test infinite error protection diff --git a/tests/external-format.impure.lisp b/tests/external-format.impure.lisp index aabdf03..09953f3 100644 --- a/tests/external-format.impure.lisp +++ b/tests/external-format.impure.lisp @@ -117,8 +117,15 @@ (dotimes (i 80) (assert (equal (read-line s nil s) "1234567890123456789012345678901234567890123456789"))))))) + (with-test (:name (:character-decode-large :force-end-of-file) :fails-on :sbcl) + (error "We can't reliably test this due to WITH-TIMEOUT race condition") + ;; This test will currently fail. But sometimes it will fail in + ;; ungracefully due to the WITH-TIMEOUT race mentioned above. This + ;; rightfully confuses some people, so we'll skip running the code + ;; for now. -- JES, 2006-01-27 + #+nil (with-open-file (s "external-format-test.txt" :direction :input :external-format :utf-8) (handler-bind diff --git a/tests/float.pure.lisp b/tests/float.pure.lisp index e6c574b..1a042e5 100644 --- a/tests/float.pure.lisp +++ b/tests/float.pure.lisp @@ -93,7 +93,7 @@ (assert (= 0.0d0 (scale-float 1.0d0 (1- most-negative-fixnum)))) (with-test (:name (:scale-float-overflow :bug-372) - :fails-on '(or :ppc)) ;; bug 372 + :fails-on '(or :ppc :freebsd)) ;; bug 372 (progn (assert (raises-error? (scale-float 1.0 most-positive-fixnum) floating-point-overflow)) @@ -119,7 +119,7 @@ 'double-float)) (with-test (:name (:addition-overflow :bug-372) - :fails-on '(or :ppc :mips)) + :fails-on '(or :ppc :mips :freebsd)) (assert (typep (nth-value 1 (ignore-errors diff --git a/version.lisp-expr b/version.lisp-expr index 937d404..6a4fd7e 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.9.9.1" +"0.9.9.2" -- 1.7.10.4