Adding define-values corner case tests.

This commit is contained in:
Alex Shinn 2013-01-29 21:54:09 +09:00
parent 3afa5589a7
commit 7e30de04a8

View file

@ -385,9 +385,30 @@
(define bar (lambda (a b) (+ (* a b) a)))
(foo (+ x 3))))
(test 3 (let ()
(define-values (x y) (values 1 2))
(+ x y)))
(test 'ok
(let ()
(define-values () (values))
'ok))
(test 1
(let ()
(define-values (x) (values 1))
x))
(test 3
(let ()
(define-values x (values 1 2))
(apply + x)))
(test 3
(let ()
(define-values (x y) (values 1 2))
(+ x y)))
(test 6
(let ()
(define-values (x y z) (values 1 2 3))
(+ x y z)))
(test 10
(let ()
(define-values (x y . z) (values 1 2 3 4))
(+ x y (car z) (cadr z))))
(test '(2 1) (let ((x 1) (y 2))
(define-syntax swap!