]> gitweb.factorcode.org Git - factor.git/blob - core/ranges/ranges-tests.factor
factor: add newlines to .factor files
[factor.git] / core / ranges / ranges-tests.factor
1 USING: arrays kernel math ranges sequences sets tools.test ;
2
3 { { } } [ 1 1 (a..b) >array ] unit-test
4 { { } } [ 1 1 (a..b] >array ] unit-test
5 { { } } [ 1 1 [a..b) >array ] unit-test
6 { { 1 } } [ 1 1 [a..b] >array ] unit-test
7
8 { { }  } [ 1 2 (a..b) >array ] unit-test
9 { { 2 } } [ 1 2 (a..b] >array ] unit-test
10 { { 1 } } [ 1 2 [a..b) >array ] unit-test
11 { { 1 2 } } [ 1 2 [a..b] >array ] unit-test
12
13 { { } } [ 2 1 (a..b) >array ] unit-test
14 { { 1 } } [ 2 1 (a..b] >array ] unit-test
15 { { 2 } } [ 2 1 [a..b) >array ] unit-test
16 { { 2 1 } } [ 2 1 [a..b] >array ] unit-test
17
18 { { 1 2 3 4 5 } } [ 1 5 1 <range> >array ] unit-test
19 { { 5 4 3 2 1 } } [ 5 1 -1 <range> >array ] unit-test
20
21 { { 0 1/3 2/3 1 } } [ 0 1 1/3 <range> >array ] unit-test
22 { { 0 1/3 2/3 1 } } [ 1 0 -1/3 <range> >array reverse ] unit-test
23
24 { 0 } [ 0 -1 .0001 <range> length ] unit-test
25 { 0 } [ 0 -1 .5 <range> length ] unit-test
26 { 0 } [ 0 -1 1 <range> length ] unit-test
27 { 0 } [ 0 -1 2 <range> length ] unit-test
28 { 0 } [ 0 -1 3 <range> length ] unit-test
29 { 0 } [ 0 -1 4 <range> length ] unit-test
30
31 { 0 } [ 0 -2 .0001 <range> length ] unit-test
32 { 0 } [ 0 -2 1 <range> length ] unit-test
33 { 0 } [ 0 -2 2 <range> length ] unit-test
34 { 0 } [ 0 -2 3 <range> length ] unit-test
35 { 0 } [ 0 -2 4 <range> length ] unit-test
36
37 { 0 } [ -1 0 -.0001 <range> length ] unit-test
38 { 0 } [ -1 0 -.5 <range> length ] unit-test
39 { 0 } [ -1 0 -1 <range> length ] unit-test
40 { 0 } [ -1 0 -2 <range> length ] unit-test
41 { 0 } [ -1 0 -3 <range> length ] unit-test
42 { 0 } [ -1 0 -4 <range> length ] unit-test
43
44 { 0 } [ -2 0 -.0001 <range> length ] unit-test
45 { 0 } [ -2 0 -1 <range> length ] unit-test
46 { 0 } [ -2 0 -2 <range> length ] unit-test
47 { 0 } [ -2 0 -3 <range> length ] unit-test
48 { 0 } [ -2 0 -4 <range> length ] unit-test
49
50 { 100 } [
51     1 100 [a..b] [ 2^ [1..b] ] map members length
52 ] unit-test
53
54 { t } [ -10 10 1 <range> [ sum ] [ >array sum ] bi = ] unit-test
55 { t } [ -10 10 2 <range> [ sum ] [ >array sum ] bi = ] unit-test
56 { t } [ 10 -10 -1 <range> [ sum ] [ >array sum ] bi = ] unit-test
57 { t } [ 10 -10 -2 <range> [ sum ] [ >array sum ] bi = ] unit-test
58
59 ! Empty range
60 { 0 } [ 1 0 1 <range> sum ] unit-test