diff options
Diffstat (limited to 'tests/012')
-rw-r--r-- | tests/012/op.tl | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/tests/012/op.tl b/tests/012/op.tl index 47f1f80d..34f7ef39 100644 --- a/tests/012/op.tl +++ b/tests/012/op.tl @@ -41,6 +41,18 @@ (fi (do if @1 @3 @rest @2)) (3 t)) (mtest + (fi (lop)) :error + (fi (lop list)) (0 t) + (fi (lop list @1)) (1 t) + (fi (lop list @2)) (2 t) + (fi (lop list @42)) (42 t) + (fi (lop list @rest)) (0 t) + (fi (lop list @1 @rest)) (1 t) + (fi (lop list @2 @rest)) (2 t) + (fi (lop list @42 @rest)) (42 t) + (fi (lop list @1 @3 @rest @2)) (3 t)) + +(mtest [(do quote x) 3] :error [(do quote @1) 3] :error (do pop a) :error) @@ -78,12 +90,22 @@ (mtest [[(do op list)] 2] :error [[(do op list) 2]] (2) + [[(do op list 3) 2]] (3 2) [[(do op list @@1) 1] 2] (1 2) [[(do op list @1)] 2] :error [[(do op list @1) 1] 2] (2 1) [[(do op list @@1 @1) 1] 2] (1 2)) (mtest + [[(do lop list)] 2] :error + [[(do lop list) 2]] (2) + [[(do lop list 3) 2]] (3 2) + [[(do lop list @@1) 1] 2] (2 1) + [[(do lop list @1)] 2] :error + [[(do lop list @1) 1] 2] (2 1) + [[(do lop list @@1 @1) 1] 2] (1 2)) + +(mtest [[[[(do do do op list @1) 1] 2] 3] 4] (4 1 2 3) [[[[(do do do op list @@1) 1] 2] 3] 4] (3 1 2 4) [[[[(do do do op list @@@1) 1] 2] 3] 4] (2 1 3 4) @@ -125,3 +147,25 @@ (tap inc y @1)) y)) (13 23)) + +(mtest + [(op list) 1 2 3] (1 2 3) + [(op list 0) 1 2 3] (0 1 2 3) + [(op list 0 4) 1 2 3] (0 4 1 2 3) + [(op list @1) 1 2 3] (1) + [(op list @2) 1 2 3] (2) + [(op list @3) 1 2 3] (3) + [(op list 0 @3) 1 2 3] (0 3) + [(op list 0 4 @3) 1 2 3] (0 4 3) + [(op list . @rest) 1 2 3] (1 2 3)) + +(mtest + [(lop list) 1 2 3] (1 2 3) + [(lop list 0) 1 2 3] (1 2 3 0) + [(lop list 0 4) 1 2 3] (1 2 3 0 4) + [(lop list @1) 1 2 3] (1) + [(lop list @2) 1 2 3] (2) + [(lop list @3) 1 2 3] (3) + [(lop list 0 @3) 1 2 3] (0 3) + [(lop list 0 4 @3) 1 2 3] (0 4 3) + [(lop list . @rest) 1 2 3] (1 2 3)) |