X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fstream.impure.lisp;h=d2891f44886b95178e362dc5a28a884b3cf5b3bf;hb=50f728671defadb8f7b1e8691c984cb0e6aba17c;hp=caf58cc1ea28d781a691145fb38eca68822c410a;hpb=ebbaa0e11a4d5c9bf021d28f212cfb6d5cd4aaab;p=sbcl.git diff --git a/tests/stream.impure.lisp b/tests/stream.impure.lisp index caf58cc..d2891f4 100644 --- a/tests/stream.impure.lisp +++ b/tests/stream.impure.lisp @@ -11,9 +11,8 @@ ;;;; absolutely no warranty. See the COPYING and CREDITS files for ;;;; more information. -(in-package :cl-user) - (load "assertoid.lisp") +(use-package "ASSERTOID") ;;; type errors for inappropriate stream arguments, fixed in ;;; sbcl-0.7.8.19 @@ -41,6 +40,20 @@ (make-string-output-stream) (make-string-input-stream "foo")) type-error))) + +;;; bug 225: STRING-STREAM was not a class +(eval `(defgeneric bug225 (s) + ,@(mapcar (lambda (class) + `(:method :around ((s ,class)) (cons ',class (call-next-method)))) + '(stream string-stream sb-impl::string-input-stream + sb-impl::string-output-stream)) + (:method (class) nil))) + +(assert (equal (bug225 (make-string-input-stream "hello")) + '(sb-impl::string-input-stream string-stream stream))) +(assert (equal (bug225 (make-string-output-stream)) + '(sb-impl::string-output-stream string-stream stream))) + ;;; success (quit :unix-status 104)