]> gitweb.factorcode.org Git - factor.git/blob - extra/sequences/lib/lib-tests.factor
Fixing basis -> extra dependencies
[factor.git] / extra / sequences / lib / lib-tests.factor
1 USING: arrays kernel sequences sequences.lib math math.functions math.ranges
2     tools.test strings ;
3 IN: sequences.lib.tests
4
5 [ 1 2 { 3 4 } [ + + drop ] 2 each-withn  ] must-infer
6 { 13 } [ 1 2 { 3 4 } [ + + ] 2 each-withn + ] unit-test
7
8 [ 1 2 { 3 4 } [ + + ] 2 map-withn ] must-infer
9 { { 6 7 } } [ 1 2 { 3 4 } [ + + ] 2 map-withn ] unit-test
10 { { 16 17 18 19 20 } } [ 1 2 3 4 { 6 7 8 9 10 } [ + + + + ] 4 map-withn ] unit-test
11 [ { 910 911 912 } ] [ 10 900 3 [ + + ] map-with2 ] unit-test
12
13 [ 4 ] [ { 1 2 } [ sq ] [ * ] map-reduce ] unit-test
14 [ 36 ] [ { 2 3 } [ sq ] [ * ] map-reduce ] unit-test
15
16 [ 10 ] [ { 1 2 3 4 } [ + ] reduce* ] unit-test
17 [ 24 ] [ { 1 2 3 4 } [ * ] reduce* ] unit-test
18
19 [ -4 ] [ 1 -4 [ abs ] higher ] unit-test
20 [ 1 ] [ 1 -4 [ abs ] lower ] unit-test
21
22 [ { 1 2 3 4 } ] [ { { 1 2 3 4 } { 1 2 3 } } longest ] unit-test
23 [ { 1 2 3 4 } ] [ { { 1 2 3 } { 1 2 3 4 } } longest ] unit-test
24
25 [ { 1 2 3 } ] [ { { 1 2 3 4 } { 1 2 3 } } shortest ] unit-test
26 [ { 1 2 3 } ] [ { { 1 2 3 } { 1 2 3 4 } } shortest ] unit-test
27
28 [ 3 ] [ 1 3 bigger ] unit-test
29 [ 1 ] [ 1 3 smaller ] unit-test
30
31 [ "abd" ] [ "abc" "abd" bigger ] unit-test
32 [ "abc" ] [ "abc" "abd" smaller ] unit-test
33
34 [ "abe" ] [ { "abc" "abd" "abe" } biggest ] unit-test
35 [ "abc" ] [ { "abc" "abd" "abe" } smallest ] unit-test
36
37 [ 1 3 ] [ { 1 2 3 } minmax ] unit-test
38 [ -11 -9 ] [ { -11 -10 -9 } minmax ] unit-test
39 [ -1/0. 1/0. ] [ { -1/0. 1/0. -11 -10 -9 } minmax ] unit-test
40
41 [ { { 1 } { -1 5 } { 2 4 } } ]
42 [ { 1 -1 5 2 4 } [ < ] monotonic-split [ >array ] map ] unit-test
43 [ { { 1 1 1 1 } { 2 2 } { 3 } { 4 } { 5 } { 6 6 6 } } ]
44 [ { 1 1 1 1 2 2 3 4 5 6 6 6 } [ = ] monotonic-split [ >array ] map ] unit-test
45
46 [ { 1 9 25 } ] [ { 1 3 5 6 } [ sq ] [ even? ] map-until ] unit-test
47 [ { 2 4 } ] [ { 2 4 1 3 } [ even? ] take-while ] unit-test
48
49 [ { { 0 0 } { 1 0 } { 0 1 } { 1 1 } } ] [ 2 2 exact-strings ] unit-test
50 [ t ] [ "ab" 4 strings [ >string ] map "abab" swap member? ] unit-test
51 [ { { } { 1 } { 2 } { 1 2 } } ] [ { 1 2 } power-set ] unit-test
52
53 [ f ] [ { } ?first ] unit-test
54 [ f ] [ { } ?fourth ] unit-test
55 [ 1 ] [ { 1 2 3 } ?first ] unit-test
56 [ 2 ] [ { 1 2 3 } ?second ] unit-test
57 [ 3 ] [ { 1 2 3 } ?third ] unit-test
58 [ f ] [ { 1 2 3 } ?fourth ] unit-test
59
60 [ 1 2 { 3 4 } [ + + ] 2 map-withn ] must-infer
61 { { 6 7 } } [ 1 2 { 3 4 } [ + + ] 2 map-withn ] unit-test
62 { { 16 17 18 19 20 } } [ 1 2 3 4 { 6 7 8 9 10 } [ + + + + ] 4 map-withn ] unit-test
63 [ 1 2 { 3 4 } [ + + drop ] 2 each-withn  ] must-infer
64 { 13 } [ 1 2 { 3 4 } [ + + ] 2 each-withn + ] unit-test
65 [ { 910 911 912 } ] [ 10 900 3 [ + + ] map-with2 ] unit-test
66
67 [ "empty" ] [ { } [ "not empty" ] [ "empty" ] if-seq ] unit-test
68 [ { 1 } "not empty" ] [ { 1 } [ "not empty" ] [ "empty" ] if-seq ] unit-test