1
;*---------------------------------------------------------------------*/
2
;* serrano/prgm/project/bigloo/recette/vector.scm */
4
;* Author : Manuel Serrano */
5
;* Creation : Tue Nov 3 09:39:09 1992 */
6
;* Last change : Mon Jun 7 11:46:40 2004 (serrano) */
8
;* On test les operations primitives sur les vecteurs */
9
;*---------------------------------------------------------------------*/
11
(load "./test/unittest-bigloo.scm")
13
;*---------------------------------------------------------------------*/
14
;* Tvector optimization check */
15
;*---------------------------------------------------------------------*/
16
(define *number-images* (vector #\0 #\1 #\2))
17
(define *foo* (vector "toto" "toto"))
19
(define (prin-integer n)
20
(let ((x (vector-ref *number-images* 2)))
24
(vector-ref (if (equal? 5 n) *number-images* *foo*) 0)
27
;*---------------------------------------------------------------------*/
29
;*---------------------------------------------------------------------*/
31
(test "vector?" (vector? '#()) #t)
32
(test "vector?" (vector? '#(1)) #t)
33
(test "ref" (vector-ref '#(1 2 3 4) 2) 3)
34
(test "set" (let ((v (make-vector 1 '())))
35
(vector-set! v 0 'toto)
38
(test "length" (vector-length '#(1 2 3 4 5)) 5)
39
(test "length" (vector-length (make-vector 5 'toto)) 5)
40
(test "equal vector" (let ((v (make-vector 3 '())))
41
(vector-set! v 0 '(1 2 3))
42
(vector-set! v 1 '#(1 2 3))
43
(vector-set! v 2 'hello)
45
'#((1 2 3) #(1 2 3) hello))
46
(test "vector-fill" (let ((v (make-vector 3 1)))
52
(test "tvector.1" (let ((t '#(1 2 3)))
56
; (string? (with-output-to-string
58
; (print (make-array-of-int 1 1)))))
60
(test "vector-ref" (foo 10) #\2)
61
(test "vector-ref" (vector-ref (let ((v (vector 0 1 2))) v) 2) 2))