factor/basis/io/streams/string/string-tests.factor

63 lines
1.8 KiB
Factor
Raw Normal View History

USING: io.streams.string io kernel arrays namespaces make
tools.test ;
2008-03-01 17:00:45 -05:00
IN: io.streams.string.tests
2007-09-20 18:09:08 -04:00
{ "" } [ "" [ contents ] with-string-reader ] unit-test
{ "line 1" CHAR: l }
2007-09-20 18:09:08 -04:00
[
2014-03-11 14:25:53 -04:00
"line 1\nline 2\nline 3" [ readln read1 ] with-string-reader
2007-09-20 18:09:08 -04:00
]
unit-test
{ { "line 1" "line 2" "line 3" } } [
2014-03-11 14:25:53 -04:00
"line 1\nline 2\nline 3" [ lines ] with-string-reader
] unit-test
{ { "" "foo" "bar" "baz" } } [
2014-03-11 14:25:53 -04:00
"\rfoo\r\nbar\rbaz\n" [ lines ] with-string-reader
] unit-test
{ f } [ "" [ readln ] with-string-reader ] unit-test
2007-09-20 18:09:08 -04:00
{ "xyzzy" } [ [ "xyzzy" write ] with-string-writer ] unit-test
2007-09-20 18:09:08 -04:00
{ "a" } [ "abc" [ 1 read ] with-string-reader ] unit-test
{ "ab" } [ "abc" [ 2 read ] with-string-reader ] unit-test
{ "abc" } [ "abc" [ 3 read ] with-string-reader ] unit-test
{ "abc" } [ "abc" [ 4 read ] with-string-reader ] unit-test
{ "abc" f } [ "abc" [ 3 read read1 ] with-string-reader ] unit-test
2007-09-20 18:09:08 -04:00
{
2014-03-11 14:25:53 -04:00
{ "It seems " CHAR: J }
{ "obs has lost h" CHAR: i }
{ "s grasp on reality again.\n" f }
} [
2014-03-11 14:25:53 -04:00
"It seems Jobs has lost his grasp on reality again.\n" [
"J" read-until 2array
"i" read-until 2array
"X" read-until 2array
] with-string-reader
2007-09-20 18:09:08 -04:00
] unit-test
2014-03-11 14:25:53 -04:00
{ "" CHAR: \r } [ "\r\n" [ "\r" read-until ] with-string-reader ] unit-test
{ f f } [ "" [ "\r" read-until ] with-string-reader ] unit-test
{ "hello" "hi" } [
2014-03-11 14:25:53 -04:00
"hello\nhi" [ readln 2 read ] with-string-reader
2007-09-20 18:09:08 -04:00
] unit-test
{ "hello" "hi" } [
2014-03-11 14:25:53 -04:00
"hello\r\nhi" [ readln 2 read ] with-string-reader
2007-09-20 18:09:08 -04:00
] unit-test
{ "hello" "hi" } [
2014-03-11 14:25:53 -04:00
"hello\rhi" [ readln 2 read ] with-string-reader
2007-09-20 18:09:08 -04:00
] unit-test
! Issue #70 github
{ f } [ "" [ 0 read ] with-string-reader ] unit-test
{ f } [ "" [ 1 read ] with-string-reader ] unit-test
{ f } [ "" [ readln ] with-string-reader ] unit-test
{ "\"\"" } [ "\"\"" [ readln ] with-string-reader ] unit-test