1 USING: tools.test sequences.parser unicode.categories kernel
3 IN: sequences.parser.tests
6 [ "hello" [ take-rest ] parse-sequence ] unit-test
8 { "hi" " how are you?" }
11 [ [ [ current blank? ] take-until ] [ take-rest ] bi ] parse-sequence
17 [ CHAR: ; take-until-object ] [ take-rest ] bi
24 [ "and" take-until-sequence ] [ take-rest ] bi
31 [ "and" take-until-sequence ]
32 [ "and" take-sequence drop ]
40 [ "and" take-until-sequence* ]
46 [ { 1 2 3 4 } <sequence-parser> { 3 4 } take-until-sequence ] unit-test
50 "aaaa" <sequence-parser>
51 [ "b" take-until-sequence ] [ take-rest ] bi
56 " foo " [ skip-whitespace n>> ] parse-sequence
60 [ { 1 2 3 } <sequence-parser> [ current 3 = ] take-until ] unit-test
63 [ "abcd" <sequence-parser> "ab" take-sequence ] unit-test
66 [ "abcd" <sequence-parser> "lol" take-sequence ] unit-test
70 "abcd" <sequence-parser>
71 [ "lol" take-sequence drop ] [ "ab" take-sequence ] bi
75 [ "abcd" <sequence-parser> "" take-sequence ] unit-test
78 [ "abcd" <sequence-parser> [ "ab" take-sequence drop ] [ "cd" take-sequence ] bi ] unit-test
81 [ "" <sequence-parser> take-rest ] unit-test
84 [ "abc" <sequence-parser> dup "abc" take-sequence drop take-rest ] unit-test
87 [ "abc" <sequence-parser> "abcdefg" take-sequence ] unit-test
90 [ "1234f" <sequence-parser> take-integer ] unit-test
94 "yes1234f" <sequence-parser>
95 [ take-integer drop ] [ "yes" take-sequence ] bi
98 { f } [ "" <sequence-parser> 4 take-n ] unit-test
99 { "abcd" } [ "abcd" <sequence-parser> 4 take-n ] unit-test
100 { "abcd" "efg" } [ "abcdefg" <sequence-parser> [ 4 take-n ] [ take-rest ] bi ] unit-test
103 [ "\n" <sequence-parser> take-integer ] unit-test
105 { "\n" } [ "\n" <sequence-parser> [ ] take-while ] unit-test
106 { f } [ "\n" <sequence-parser> [ not ] take-while ] unit-test