]> gitweb.factorcode.org Git - factor.git/blob - extra/trees/trees-tests.factor
d5211ce77e7b26fba80c89a7293e2059e8e7f8da
[factor.git] / extra / trees / trees-tests.factor
1 USING: trees assocs tools.test kernel sequences ;
2 IN: trees.tests
3
4 : test-tree ( -- tree )
5     TREE{
6         { 7 "seven" }
7         { 9 "nine" }
8         { 4 "four" } 
9         { 4 "replaced four" } 
10         { 7 "replaced seven" }
11     } clone ;
12
13 ! test set-at, at, at*
14 [ "seven" ] [ <tree> "seven" 7 pick set-at 7 of ] unit-test
15 [ "seven" t ] [ <tree> "seven" 7 pick set-at 7 ?of ] unit-test
16 [ 8 f ] [ <tree> "seven" 7 pick set-at 8 ?of ] unit-test
17 [ "seven" ] [ <tree> "seven" 7 pick set-at 7 of ] unit-test
18 [ "replacement" ] [ <tree> "seven" 7 pick set-at "replacement" 7 pick set-at 7 of ] unit-test
19 [ "replaced four" ] [ test-tree 4 of ] unit-test
20 [ "nine" ] [ test-tree 9 of ] unit-test
21
22 ! test delete-at
23 [ f ] [ test-tree 9 over delete-at 9 of ] unit-test
24 [ "replaced seven" ] [ test-tree 9 over delete-at 7 of ] unit-test
25 [ "replaced four" ] [ test-tree 9 over delete-at 4 of ] unit-test
26 [ "nine" "replaced four" ] [ test-tree 7 over delete-at 9 over at 4 rot at ] unit-test
27 [ "nine" ] [ test-tree 7 over delete-at 4 over delete-at 9 of ] unit-test