Blame tests/tfn/jsDecode.t
|
Packit Service |
384592 |
### Empty
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "",
|
|
Packit Service |
384592 |
output => "",
|
|
Packit Service |
384592 |
ret => 0,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
### Nothing
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "TestCase",
|
|
Packit Service |
384592 |
output => "TestCase",
|
|
Packit Service |
384592 |
ret => 0,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "Test\0Case",
|
|
Packit Service |
384592 |
output => "Test\0Case",
|
|
Packit Service |
384592 |
ret => 0,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
### Valid Sequences
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\a\\b\\f\\n\\r\\t\\v\\?\\'\\\"\\0\\12\\123\\x00\\xff\\u0021\\uff01",
|
|
Packit Service |
384592 |
output => "\a\b\f\x0a\x0d\t\x0b?'\"\x00\x0a\x53\x00\xff\x21\x21",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\a\\b\\f\\n\\r\\t\\v\0\\?\\'\\\"\\0\\12\\123\\x00\\xff\\u0021\\uff01",
|
|
Packit Service |
384592 |
output => "\a\b\f\x0a\x0d\t\x0b\0?'\"\x00\x0a\x53\x00\xff\x21\x21",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
### Invalid Sequences
|
|
Packit Service |
384592 |
# \8 and \9 are not octal
|
|
Packit Service |
384592 |
# \666 is \66 + '6' (JS does not allow the overflow as C does)
|
|
Packit Service |
384592 |
# \u00ag, \u00ga, \u0zaa, \uz0aa are not hex
|
|
Packit Service |
384592 |
# \xag and \xga are not hex,
|
|
Packit Service |
384592 |
# \0123 is \012 + '3'
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\8\\9\\666\\u00ag\\u00ga\\u0zaa\\uz0aa\\xag\\xga\\0123\\u00a",
|
|
Packit Service |
384592 |
output => "89\x366u00agu00gau0zaauz0aaxagxga\x0a3u00a",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
|
|
Packit Service |
384592 |
# \x, \x0 lack enough hex digits
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\x",
|
|
Packit Service |
384592 |
output => "x",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\x\\x0",
|
|
Packit Service |
384592 |
output => "xx0",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\x\\x0\0",
|
|
Packit Service |
384592 |
output => "xx0\0",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
# \u, \u0 \u01, \u012 lack enough hex digits
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\u",
|
|
Packit Service |
384592 |
output => "u",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\u\\u0",
|
|
Packit Service |
384592 |
output => "uu0",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\u\\u0\\u01",
|
|
Packit Service |
384592 |
output => "uu0u01",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\u\\u0\\u01\\u012",
|
|
Packit Service |
384592 |
output => "uu0u01u012",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\u\\u0\\u01\\u012\0",
|
|
Packit Service |
384592 |
output => "uu0u01u012\0",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
# A forward slash with nothing after
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\",
|
|
Packit Service |
384592 |
output => "\\",
|
|
Packit Service |
384592 |
ret => 0,
|
|
Packit Service |
384592 |
},
|
|
Packit Service |
384592 |
# A forward slash with NUL after
|
|
Packit Service |
384592 |
{
|
|
Packit Service |
384592 |
type => "tfn",
|
|
Packit Service |
384592 |
name => "jsDecode",
|
|
Packit Service |
384592 |
input => "\\\0",
|
|
Packit Service |
384592 |
output => "\0",
|
|
Packit Service |
384592 |
ret => 1,
|
|
Packit Service |
384592 |
},
|