X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fprint.impure.lisp;h=608ce7fc36edb9cb04a985f8ac1e0a7d1eddfbaf;hb=9fb8bf2eb2c91cbda313edaa3362ff8b221ab81d;hp=5aca94fc65f67896a72c79a87343815f7711bf49;hpb=8f41e246101ca3906d6c77da51c9de5601777b28;p=sbcl.git diff --git a/tests/print.impure.lisp b/tests/print.impure.lisp index 5aca94f..608ce7f 100644 --- a/tests/print.impure.lisp +++ b/tests/print.impure.lisp @@ -410,4 +410,21 @@ (with-test (:name (:print-readable :character :iso-8859-1)) (test-readable-character (code-char #xfffe) :iso-8859-1)) +(assert (string= (eval '(format nil "~:C" #\a)) "a")) +(assert (string= (format nil (formatter "~:C") #\a) "a")) + +;;; This used to trigger an AVER instead. +(assert (raises-error? (format t "~>") sb-format:format-error)) + +;;; readably printing hash-tables, check for circularity +(let ((x (cons 1 2)) + (h (make-hash-table)) + (*print-readably* t) + (*print-circle* t) + (*read-eval* t)) + (setf (gethash x h) h) + (destructuring-bind (x2 . h2) (read-from-string (write-to-string (cons x h))) + (assert (equal x x2)) + (assert (eq h2 (gethash x2 h2))))) + ;;; success