factor/basis/sequences/deep/deep-tests.factor

42 lines
1.2 KiB
Factor
Raw Normal View History

2007-12-24 13:20:52 -05:00
USING: sequences.deep kernel tools.test strings math arrays
namespaces make sequences ;
2008-03-08 05:27:19 -05:00
IN: sequences.deep.tests
2007-12-24 13:20:52 -05:00
[ [ "hello" 3 4 swap ] ] [ [ { "hello" V{ 3 4 } } swap ] flatten ] unit-test
2008-11-24 01:52:40 -05:00
[ "foo" t ] [ { { "foo" } "bar" } [ string? ] (deep-find) ] unit-test
2007-12-24 13:20:52 -05:00
2008-11-24 01:52:40 -05:00
[ f f ] [ { { "foo" } "bar" } [ number? ] (deep-find) ] unit-test
2007-12-24 13:20:52 -05:00
2008-11-24 01:52:40 -05:00
[ { { "foo" } "bar" } t ] [ { { "foo" } "bar" } [ array? ] (deep-find) ] unit-test
2007-12-24 13:20:52 -05:00
: change-something ( seq -- newseq )
2008-03-31 21:24:48 -04:00
dup array? [ "hi" suffix ] [ "hello" append ] if ;
2007-12-24 13:20:52 -05:00
[ { { "heyhello" "hihello" } "hihello" } ]
[ "hey" 1array 1array [ change-something ] deep-map ] unit-test
[ { { "heyhello" "hihello" } } ]
[ "hey" 1array 1array [ change-something ] deep-map! ] unit-test
2007-12-24 13:20:52 -05:00
[ t ] [ "foo" [ string? ] deep-any? ] unit-test
2007-12-24 13:20:52 -05:00
[ "foo" ] [ "foo" [ string? ] deep-find ] unit-test
[ { { 1 2 } 1 2 } ] [ [ { 1 2 } [ , ] deep-each ] { } make ] unit-test
[ t ]
[ { { 1 2 3 } 4 } { { { 1 { { 1 2 3 } 4 } } } 2 } deep-member? ] unit-test
[ t ]
[ { { 1 2 3 } 4 } { { { 1 2 3 } 4 } 2 } deep-member? ] unit-test
[ f ]
[ { 1 2 3 4 } { 1 2 3 { 4 } } deep-subseq? ] unit-test
[ t ]
[ { 1 2 3 4 } { 1 2 3 4 } deep-subseq? ] unit-test
[ t ]
[ { 1 2 3 4 } { { 1 2 3 4 } } deep-subseq? ] unit-test