X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fvector.pure.lisp;h=595d588c88a9e546f761c18d77d0099d01a80b7c;hb=b9a60d8c091096ce7f90073de9b3d26ec7433387;hp=9f60cca7a6acf7c5febdce0afd00b5946366c6e1;hpb=675c5a9f9e3028bc2fd922ed6f570f01cf8c41cf;p=sbcl.git diff --git a/tests/vector.pure.lisp b/tests/vector.pure.lisp index 9f60cca..595d588 100644 --- a/tests/vector.pure.lisp +++ b/tests/vector.pure.lisp @@ -16,10 +16,31 @@ (simple-u32 (make-array 50 :element-type '(unsigned-byte 32))) (simple-character (make-string 44)) - (complex-t (make-array 35 :fill-pointer 3)) + (complex-t (make-array 4 :fill-pointer 3)) (complex-u32 (make-array 88 + :adjustable t :element-type '(unsigned-byte 32))) (complex-character (make-array 14 :element-type 'character :fill-pointer t))) - (assert (= (length simple-t) 35))))) + (assert (= (length simple-t) 35)) + (assert (= (length simple-u32) 50)) + (assert (= (length simple-character) 44)) + (assert (= (length complex-t) 3)) + (assert (= (length complex-u32) 88)) + (assert (= (length complex-character) 14)) + (vector-push-extend #\a complex-t) + (assert (= (length complex-t) 4)) + (assert (raises-error? (vector-push-extend #\b simple-t)))))) + +(multiple-value-bind (fp1 index fp2 bool) + (let ((a (make-array '(5) :fill-pointer 5 :adjustable 5 + :initial-contents '(a b c d e)))) + (values (fill-pointer a) + (vector-push-extend 'x a) + (fill-pointer a) + (<= (array-total-size a) 5))) + (assert (= fp1 5)) + (assert (= index 5)) + (assert (= fp2 6)) + (assert (not bool)))