factor/core/strings/parser/parser-tests.factor

33 lines
815 B
Factor

USING: accessors eval strings.parser strings.parser.private
tools.test ;
IN: strings.parser.tests
{ "Hello\n\rworld" } [ "Hello\\n\\rworld" unescape-string ] unit-test
{ "Hello\n\rworld" } [ "Hello\n\rworld" ] unit-test
{ "Hello\n\rworld\n" } [ "Hello\n\rworld
" ] unit-test
{ "Hello\n\rworld" "hi" } [ "Hello\n\rworld" "hi" ] unit-test
{ "Hello\n\rworld" "hi" } [ "Hello\n\rworld" "hi" ] unit-test
{ "Hello\n\rworld\n" "hi" } [ "Hello\n\rworld
" "hi" ] unit-test
{ "Hello\n\rworld\"" "hi" } [ "Hello\n\rworld\"" "hi" ] unit-test
[
"\"\"\"Hello\n\rworld\\\n\"\"\"" eval( -- obj )
] [
error>> escaped-char-expected?
] must-fail-with
{
"\"abc\""
} [
"\"\\\"abc\\\"\"" eval( -- string )
] unit-test
{ "\"\\" } [ "\"\\" ] unit-test
{ "\e" } [ "\u00001b" ] unit-test
{ "\e" } [ "\x1b" ] unit-test