179 |
(assert (string= s2 (subseq s0 i j))))))) |
(assert (string= s2 (subseq s0 i j))))))) |
180 |
nil) |
nil) |
181 |
|
|
182 |
|
;;; Other specialized vectors |
183 |
|
|
184 |
|
(deftest subseq.specialized-vector.1 |
185 |
|
(let* ((v0 #(1 0 1 1 0 1 1 0)) |
186 |
|
(len (length v0))) |
187 |
|
(do-special-integer-vectors |
188 |
|
(v (copy-seq v0) nil) |
189 |
|
(loop for i from 0 below len |
190 |
|
for v1 = (subseq v i) |
191 |
|
do (assert (typep v1 'simple-array)) |
192 |
|
do (assert (equalp (subseq v i) (subseq v0 i))) |
193 |
|
do (loop for j from i to len |
194 |
|
for v2 = (subseq v i j) |
195 |
|
do (assert (typep v2 'simple-array)) |
196 |
|
(assert (equalp v2 (subseq v0 i j))))))) |
197 |
|
nil) |
198 |
|
|
199 |
|
(deftest subseq.specialized-vector.2 |
200 |
|
(loop for type in '(short-float single-float long-float double-float) |
201 |
|
for len = 10 |
202 |
|
for vals = (loop for i from 1 to len collect (coerce i type)) |
203 |
|
for vec = (make-array len :element-type type :initial-contents vals) |
204 |
|
for result = (subseq vec 1 9) |
205 |
|
unless (and (= (length result) 8) |
206 |
|
(equal (array-element-type vec) (array-element-type result)) |
207 |
|
(equalp result (apply #'vector (subseq vals 1 9)))) |
208 |
|
collect (list type vals result)) |
209 |
|
nil) |
210 |
|
|
211 |
|
(deftest subseq.specialized-vector.3 |
212 |
|
(loop for etype in '(short-float single-float long-float double-float |
213 |
|
integer rational) |
214 |
|
for type = `(complex ,etype) |
215 |
|
for len = 10 |
216 |
|
for vals = (loop for i from 1 to len collect (complex (coerce i etype) |
217 |
|
(coerce (- i) etype))) |
218 |
|
for vec = (make-array len :element-type type :initial-contents vals) |
219 |
|
for result = (subseq vec 1 9) |
220 |
|
unless (and (= (length result) 8) |
221 |
|
(equal (array-element-type vec) (array-element-type result)) |
222 |
|
(equalp result (apply #'vector (subseq vals 1 9)))) |
223 |
|
collect (list type vals result)) |
224 |
|
nil) |
225 |
|
|
226 |
;;; Tests on bit vectors |
;;; Tests on bit vectors |
227 |
|
|
228 |
(deftest subseq-bit-vector.1 |
(deftest subseq-bit-vector.1 |