diff options
Diffstat (limited to 'src/tests/unit/escape.txt')
-rw-r--r-- | src/tests/unit/escape.txt | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/src/tests/unit/escape.txt b/src/tests/unit/escape.txt new file mode 100644 index 0000000..b65e1b7 --- /dev/null +++ b/src/tests/unit/escape.txt @@ -0,0 +1,74 @@ +# +# Like the conditional tests, but tests for escape sequences +# +condition "bob" == 0x626f62 +data true + +condition 0x == '0x' +data ERROR offset 2 Empty octet string is invalid + +condition 'foo' == 0x +data ERROR offset 9 Empty octet string is invalid + +# \n gets escaped in double quoted strings +condition "\n" == 0x0a +data true + +# but not in single quoted strings +condition '\n' == 0x5c6e +data true + +condition '\'' == 0x27 +data true + +condition "'" == 0x27 +data true + +condition "\"" == 0x22 +data true + +condition 0x22 == '"' +data true + +condition '\'' == "'" +data true + +condition '\\' == "\\" +data true + +# +# The first string is \ + x +# +condition '\x' == "x" +data false + +# embedded zeros are OK +condition "a\000a" == 0x610061 +data true + +condition "aa\000" == 0x616100 +data true + +condition 'aa\000' == 0x61615c303030 +data true + +condition 'aa\000' == "aa\000" +data false + +condition 'a\n' == "a\n" +data false + +condition 0x626f62 == 'bob' +data true + +condition 0x626f62 == "bob" +data true + +condition 0x626f62 == bob +data true + +condition \n == 0x0a +data ERROR offset 1 Unexpected escape + +condition a\n == 0x610a +data ERROR offset 2 Unexpected escape |