tests/stack.min
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
'test require :test
;;;
"stack" *test/describe
(1 2 3 4 get-stack (1 2 3 4) ==) *test/assert
((1 2 3) set-stack get-stack (1 2 3) ==) *test/assert
(1 id 1 ==) *test/assert
(2 pop get-stack () ==) *test/assert
(1 dup get-stack (1 1) ==) *test/assert
(3 2 (1 +) dip + 6 ==) *test/assert
(1 2 nip get-stack (2) ==) *test/assert
(1 2 4 '+ dip get-stack (3 4) ==) *test/assert
(1 2 4 '+ keep get-stack (1 6 4) ==) *test/assert
((1) (2 swap append) sip concat (1 2 1) ==) *test/assert
(1 (2 3) cons (1 2 3) ==) *test/assert
(1 2 over get-stack (1 2 1) ==) *test/assert
(1 2 3 pick get-stack (1 2 3 1) ==) *test/assert
((1 2 3) ('sum 'size) => cleave / 2 ==) *test/assert
((1 2) (3 4) ((0 get) (1 get)) spread get-stack (1 4) ==) *test/assert
*test/report
clear-stack
|