1 IN: locals.backend.tests
2 USING: tools.test locals.backend kernel arrays ;
4 [ 3 ] [ 3 >r 1 get-local r> drop ] unit-test
6 [ 4 ] [ 3 4 >r >r 2 get-local 2 drop-locals ] unit-test
8 : get-local-test-1 ( -- x ) 3 >r 1 get-local r> drop ;
10 \ get-local-test-1 must-infer
12 [ 3 ] [ get-local-test-1 ] unit-test
14 : get-local-test-2 ( -- x ) 3 4 >r >r 2 get-local 2 drop-locals ;
16 \ get-local-test-2 must-infer
18 [ 4 ] [ get-local-test-2 ] unit-test
20 : get-local-test-3 ( -- a b ) 3 4 >r >r 2 get-local r> r> 2array ;
22 \ get-local-test-3 must-infer
24 [ 4 { 3 4 } ] [ get-local-test-3 ] unit-test
26 : get-local-test-4 ( -- a b )
27 3 4 >r >r r> r> dup swap >r swap >r r> r> 2array ;
29 \ get-local-test-4 must-infer
31 [ 4 { 3 4 } ] [ get-local-test-4 ] unit-test
33 [ 1 2 ] [ 1 2 2 load-locals r> r> ] unit-test
35 : load-locals-test-1 ( -- a b ) 1 2 2 load-locals r> r> ;
37 \ load-locals-test-1 must-infer
39 [ 1 2 ] [ load-locals-test-1 ] unit-test