1 IN: splitting.monotonic
2 USING: tools.test math arrays kernel sequences ;
4 { { } } [ { } [ < ] monotonic-split ] unit-test
5 [ { { 1 } { -1 5 } { 2 4 } } ]
6 [ { 1 -1 5 2 4 } [ < ] monotonic-split [ >array ] map ] unit-test
7 [ { { 1 1 1 1 } { 2 2 } { 3 } { 4 } { 5 } { 6 6 6 } } ]
8 [ { 1 1 1 1 2 2 3 4 5 6 6 6 } [ = ] monotonic-split [ >array ] map ] unit-test
11 [ { } [ = ] slice monotonic-slice ] unit-test
14 [ { 1 } [ = ] slice monotonic-slice [ slice? ] all? ] unit-test
17 [ { 1 } [ = ] slice monotonic-slice [ >array ] map ] unit-test
19 [ { 1 } [ = ] slice monotonic-slice ] must-infer
22 [ { 1 1 1 2 2 3 3 4 } [ = ] slice monotonic-slice [ slice? ] all? ] unit-test
24 [ { { 1 1 1 } { 2 2 } { 3 3 } { 4 } } ]
25 [ { 1 1 1 2 2 3 3 4 } [ = ] slice monotonic-slice [ >array ] map ] unit-test
28 [ { 3 3 } [ = ] slice monotonic-slice [ >array ] map ] unit-test
32 T{ upward-slice { from 0 } { to 3 } { seq { 1 2 3 2 1 } } }
33 T{ downward-slice { from 2 } { to 5 } { seq { 1 2 3 2 1 } } }
36 [ { 1 2 3 2 1 } trends ] unit-test
43 { seq { 1 2 3 3 2 1 } }
48 { seq { 1 2 3 3 2 1 } }
53 { seq { 1 2 3 3 2 1 } }
56 ] [ { 1 2 3 3 2 1 } trends ] unit-test
59 [ { { 2 2 } { 3 3 3 3 } { 4 } { 5 } } ]
62 [ [ odd? ] bi@ = ] slice monotonic-slice
67 { { 1 1 1 } { 2 2 2 2 } { 3 3 } }
70 [ [ odd? ] bi@ = ] slice monotonic-slice