Wrote tests for the new pair accessor type signatures.
original commit: 790658886b043085ec9f325e08565e52304cdd85
This commit is contained in:
parent
40360c095e
commit
f824817aa9
48
collects/tests/typed-scheme/succeed/pair-test2.rkt
Normal file
48
collects/tests/typed-scheme/succeed/pair-test2.rkt
Normal file
|
@ -0,0 +1,48 @@
|
|||
#lang typed/scheme
|
||||
|
||||
(define: x : (Listof (Listof Integer))
|
||||
'((1 1 1) (2 2 2) (3 3 3) (4 4 4) (5 5 5)))
|
||||
|
||||
(ann (caar x) Integer)
|
||||
(ann (cdar x) (Listof Integer))
|
||||
(ann (cadr x) (Listof Integer))
|
||||
(ann (cddr x) (Listof (Listof Integer)))
|
||||
(ann (caadr x) Integer)
|
||||
(ann (cdadr x) (Listof Integer))
|
||||
(ann (cadar x) Integer)
|
||||
(ann (cddar x) (Listof Integer))
|
||||
(ann (caddr x) (Listof Integer))
|
||||
(ann (cdddr x) (Listof (Listof Integer)))
|
||||
(ann (caddar x) Integer)
|
||||
(ann (cdddar x) (Listof Integer))
|
||||
(ann (cadadr x) Integer)
|
||||
(ann (cddadr x) (Listof Integer))
|
||||
(ann (caaddr x) Integer)
|
||||
(ann (cdaddr x) (Listof Integer))
|
||||
(ann (cadddr x) (Listof Integer))
|
||||
(ann (cddddr x) (Listof (Listof Integer)))
|
||||
|
||||
|
||||
(define: y : (Listof (Listof (Listof Integer)))
|
||||
'(((11 11) (12 12) (13 13))
|
||||
((21 21) (22 22) (23 23))
|
||||
((31 31) (32 32) (33 33))))
|
||||
|
||||
(ann (caaar y) Integer)
|
||||
(ann (cdaar y) (Listof Integer))
|
||||
(ann (cadaar y) Integer)
|
||||
(ann (cddaar y) (Listof Integer))
|
||||
(ann (caadar y) Integer)
|
||||
(ann (cdadar y) (Listof Integer))
|
||||
(ann (caaadr y) Integer)
|
||||
(ann (cdaadr y) (Listof Integer))
|
||||
|
||||
|
||||
(define: z : (Listof (Listof (Listof (Listof Integer))))
|
||||
'((((111 111) (112 112))
|
||||
((121 121) (122 122)))
|
||||
(((211 211) (212 212))
|
||||
((221 221) (222 222)))))
|
||||
|
||||
(ann (caaaar z) Integer)
|
||||
(ann (cdaaar z) (Listof Integer))
|
48
collects/tests/typed-scheme/succeed/pair-test3.rkt
Normal file
48
collects/tests/typed-scheme/succeed/pair-test3.rkt
Normal file
|
@ -0,0 +1,48 @@
|
|||
#lang typed/scheme
|
||||
|
||||
(define: x : (Pair (Pair (Pair (Pair Integer String)
|
||||
(Pair True Null))
|
||||
(Pair (Pair False Char)
|
||||
(Pair String Null)))
|
||||
(Pair (Pair (Pair String Integer)
|
||||
(Pair Float Null))
|
||||
(Pair (Pair (Vectorof Float) True)
|
||||
(Pair (Listof Float) False))))
|
||||
'((((1 . "1") . (#t))
|
||||
. ((#f . #\f) . ("2")))
|
||||
. ((("3" . 4) . (1.0))
|
||||
. ((#(2.0 3.0 4.0) . #t)
|
||||
. ((2.0 3.0 4.0) . #f)))))
|
||||
|
||||
|
||||
(ann (caar x) (Pair (Pair Integer String) (Pair True Null)))
|
||||
(ann (caaar x) (Pair Integer String))
|
||||
(ann (caaaar x) Integer)
|
||||
(ann (cdaaar x) String)
|
||||
(ann (cdaar x) (Pair True Null))
|
||||
(ann (cadaar x) True)
|
||||
(ann (cddaar x) Null)
|
||||
|
||||
(ann (cdar x) (Pair (Pair False Char) (Pair String Null)))
|
||||
(ann (cadar x) (Pair False Char))
|
||||
(ann (caadar x) False)
|
||||
(ann (cdadar x) Char)
|
||||
(ann (cddar x) (Pair String Null))
|
||||
(ann (caddar x) String)
|
||||
(ann (cdddar x) Null)
|
||||
|
||||
(ann (cadr x) (Pair (Pair String Integer) (Pair Float Null)))
|
||||
(ann (caadr x) (Pair String Integer))
|
||||
(ann (caaadr x) String)
|
||||
(ann (cdaadr x) Integer)
|
||||
(ann (cdadr x) (Pair Float Null))
|
||||
(ann (cadadr x) Float)
|
||||
(ann (cddadr x) Null)
|
||||
|
||||
(ann (cddr x) (Pair (Pair (Vectorof Float) True) (Pair (Listof Float) False)))
|
||||
(ann (caddr x) (Pair (Vectorof Float) True))
|
||||
(ann (caaddr x) (Vectorof Float))
|
||||
(ann (cdaddr x) True)
|
||||
(ann (cdddr x) (Pair (Listof Float) False))
|
||||
(ann (cadddr x) (Listof Float))
|
||||
(ann (cddddr x) False)
|
Loading…
Reference in New Issue
Block a user