]> gitweb.factorcode.org Git - factor.git/blob - basis/lists/lists-tests.factor
factor: Retrying on the unit tests. Also normalize some syntax with FUNCTION:.
[factor.git] / basis / lists / lists-tests.factor
1 ! Copyright (C) 2008 James Cash
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: tools.test lists math kernel ;
4 IN: lists.tests
5
6 { { 3 4 5 6 7 } } [
7     { 1 2 3 4 5 } sequence>list [ 2 + ] lmap list>array
8 ] unit-test
9
10 { 2 { 3 4 5 6 7 } } [
11     2 { 1 2 3 4 5 } sequence>list [ dupd + ] lmap list>array
12 ] unit-test
13
14 { { 3 4 5 6 } } [
15     T{ cons-state f 1
16         T{ cons-state f 2
17             T{ cons-state f 3
18                 T{ cons-state f 4
19                 +nil+ } } } } [ 2 + ] lmap>array
20 ] unit-test
21
22 { 10 } [
23     T{ cons-state f 1
24         T{ cons-state f 2
25             T{ cons-state f 3
26                 T{ cons-state f 4
27                 +nil+ } } } } 0 [ + ] foldl
28 ] unit-test
29
30 { T{ cons-state f 2 T{ cons-state f 3 T{ cons-state f 4 T{ cons-state f 5 +nil+ } } } } } [
31     { 1 2 3 4 } sequence>list [ 1 + ] lmap
32 ] unit-test
33
34 { 15 } [
35  { 1 2 3 4 5 } sequence>list 0 [ + ] foldr
36 ] unit-test
37
38 { { 5 4 3 2 1 } } [
39     { 1 2 3 4 5 } sequence>list lreverse list>array
40 ] unit-test
41
42 { 5 } [
43     { 1 2 3 4 5 } sequence>list llength
44 ] unit-test
45
46 { { 1 2 3 4 5 6 } } [
47     { 1 2 3 } sequence>list { 4 5 6 } sequence>list lappend list>array
48 ] unit-test
49
50 { { 1 } { 2 } } [ { 1 2 } sequence>list 1 lcut [ list>array ] bi@ ] unit-test