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
(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)
(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))
;;; 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
(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
(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))
'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
;;; 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"