jansson/test/testdata/invalid-strip
Petri Lehtinen 04d550b02e Add stripped unit tests for decoder
That is, test cases where there's no newline or other whitespace at
the beginning or end of input. This was implemented by adding a
--strip option to split-testfile to strip the input file after writing
it.

The actual test JSON texts are the same as testdata/invalid and
testdata/valid. The expected output of the invalid cases had to be
adjusted a bit: because there's no newline at the end, some of the
line numbers needed to be changed.
2009-09-08 17:03:01 +03:00

196 lines
2.9 KiB
Plaintext

==== empty ====
====
1
'[' or '{' expected near end of file
==== null ====
null
====
1
'[' or '{' expected near 'null'
==== lone-open-brace ====
{
====
1
string or '}' expected near end of file
==== lone-open-bracket ====
[
====
1
']' expected near end of file
==== bracket-comma ====
[,
====
1
unexpected token near ','
==== bracket-one-comma ====
[1,
====
1
']' expected near end of file
==== unterminated-string ====
["a
====
1
premature end of input near '"a'
==== unterminated-array ====
["a"
====
1
']' expected near end of file
==== apostrophe ====
['
====
1
invalid token near '''
==== brace-comma ====
{,
====
1
string or '}' expected near ','
==== unterminated-empty-key ====
{"
====
1
premature end of input near '"'
==== unterminated-key ====
{"a
====
1
premature end of input near '"a'
==== object-no-colon ====
{"a"
====
1
':' expected near end of file
==== object-apostrophes ====
{'a'
====
1
string or '}' expected near '''
==== object-no-value ====
{"a":
====
1
unexpected token near end of file
==== object-unterminated-value ====
{"a":"a
====
1
premature end of input near '"a'
==== object-garbage-at-end ====
{"a":"a" 123}
====
1
'}' expected near '123'
==== unterminated-object-and-array ====
{[
====
1
string or '}' expected near '['
==== unterminated-array-and-object ====
[{
====
1
string or '}' expected near end of file
==== object-in-unterminated-array ====
[{}
====
1
']' expected near end of file
==== extra-comma-in-array ====
[1,]
====
1
unexpected token near ']'
==== extra-command-in-multiline-array ====
[1,
2,
3,
4,
5,
]
====
6
unexpected token near ']'
==== real-truncated-at-point ====
[1.]
====
1
invalid token near '1.'
==== real-truncated-at-e ====
[1e]
====
1
invalid token near '1e'
==== real-garbage-after-e ====
[1ea]
====
1
invalid token near '1e'
==== integer-starting-with-zero ====
[012]
====
1
invalid token near '0'
==== negative-integer-starting-with-zero ====
[-012]
====
1
invalid token near '-0'
==== invalid-identifier ====
[troo
====
1
invalid token near 'troo'
==== invalid-escap ====
["\a <-- invalid escape"]
====
1
invalid escape near '"\'
==== tab-character-in-string ====
[" <-- tab character"]
====
1
control character 0x9 near '"'
==== null-byte-in-string ====
["\u0000 (null byte not allowed)"]
====
1
\u0000 is not allowed
==== truncated-unicode-surrogate ====
["\uDADA (first surrogate without the second)"]
====
1
invalid Unicode '\uDADA'
==== invalid-second-surrogate ====
["\uD888\u3210 (first surrogate and invalid second surrogate)"]
====
1
invalid Unicode '\uD888\u3210'
==== lone-second-surrogate ====
["\uDFAA (second surrogate on it's own)"]
====
1
invalid Unicode '\uDFAA'
==== unicode-identifier ====
å
====
1
'[' or '{' expected near 'å'
==== ascii-unicode-identifier ====
====
1
'[' or '{' expected near 'a'
==== garbage-at-the-end ====
[1,2,3]foo
====
1
end of file expected near 'foo'
==== garbage-after-newline ====
[1,2,3]
foo
====
2
end of file expected near 'foo'