HEX
Server: LiteSpeed
System: Linux server.nevid-deploma.com 4.18.0-553.111.1.lve.el8.x86_64 #1 SMP Fri Mar 13 13:42:17 UTC 2026 x86_64
User: smilepac (1037)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //opt/cppython/lib/python3.8/test/test_json/__pycache__/test_fail.cpython-38.opt-1.pyc
U

0D�gQ#�"@s�ddlmZmZdddddddd	d
ddd
ddddddddddddddddddd d!d"d#g"Zd$d%d&�ZGd'd(�d(�ZGd)d*�d*ee�ZGd+d,�d,ee�Zd-S).�)�PyTest�CTestz<"A JSON payload should be an object or array, not a string."z["Unclosed array"z%{unquoted_key: "keys must be quoted"}z["extra comma",]z["double extra comma",,]z[   , "<-- missing value"]z["Comma after the close"],z["Extra close"]]z{"Extra comma": true,}z:{"Extra value after close": true} "misplaced quoted value"z{"Illegal expression": 1 + 2}z{"Illegal invocation": alert()}z+{"Numbers cannot have leading zeroes": 013}z{"Numbers cannot be hex": 0x14}z"["Illegal backslash escape: \x15"]z[\naked]z"["Illegal backslash escape: \017"]z2[[[[[[[[[[[[[[[[[[[["Too deep"]]]]]]]]]]]]]]]]]]]]z{"Missing colon" null}z{"Double colon":: null}z {"Comma instead of colon", null}z!["Colon instead of comma": false]z["Bad value", truth]z['single quote']z["	tab	character	in	string	"]z&["tab\   character\   in\  string\  "]z["line
break"]z["line\
break"]z[0e]z[0e+]z[0e+-1]z({"Comma instead if closing brace": true,z["mismatch"}z$["AZ control characters in string"]zwhy not have a string payload?z,spec doesn't specify any nesting limitations)��c@sDeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dS)�TestFailc	Csjtt�D]\\}}|d}|tkr,|�|�qz|�|�Wn|jk
rPYqX|�d�||��qdS)Nrz(Expected failure for fail{0}.json: {1!r})�	enumerate�JSONDOCS�SKIPS�loads�JSONDecodeErrorZfail�format)�self�idx�doc�r�7/opt/cppython/lib/python3.8/test/test_json/test_fail.py�
test_failuresQs
zTestFail.test_failuresc	Cs0ddd�}|�td��|�|�W5QRXdS)Nr�)�a)rrz5keys must be str, int, float, bool or None, not tuple)�assertRaisesRegex�	TypeError�dumps)r
�datarrr�test_non_string_keys_dict^s

�z"TestFail.test_non_string_keys_dictc	Cs.ddl}|�td��|�|�W5QRXdS)Nrz.Object of type module is not JSON serializable)�sysrrr)r
rrrr�test_not_serializableds
�zTestFail.test_not_serializablecCs�ddddddddd	d
ddd
ddg}|ddg7}|D]�\}}}|�|j��}|�|�W5QRX|j}|�|j|�|�|j|�|�|jd�|�|j|d�|�t	|�d||d|f�q2dS)N)��Expecting valuer)�[rr)z[42�Expecting ',' delimiter�)z[42,r�)z["�Unterminated string starting atr)z["spamr"r)z["spam"r�)z["spam",r�)�{�1Expecting property name enclosed in double quotesr)z{"r"r)z{"spamr"r)z{"spam"�Expecting ':' delimiterr#)z{"spam":rr$)z
{"spam":42r�
)z{"spam":42,r&�)�"r"r)z"spamr"rr�%s: line 1 column %d (char %d)�
ZassertRaisesrr
�	exceptionZassertEqual�msg�pos�lineno�colno�str�r
�
test_casesrr.r�cm�errrrr�test_truncated_inputjsB��
��zTestFail.test_truncated_inputcCs�ddddddddd	d
ddd
ddddddddg}|D]�\}}}|�|j��}|�|�W5QRX|j}|�|j|�|�|j|�|�|jd�|�|j|d�|�t	|�d||d|f�q2dS)N)z[,rr)z
{"spam":[}r�	)z[42:rr )z
[42 "spam"rr!)z[42,]rr!)z{"spam":[42}rr))z["]r"r)z["spam":rr#)z	["spam",]rr$)z{:r&r)z{,r&r)z{42r&r)z[{]r&r)z{"spam",r'r#)z{"spam"}r'r#)z	[{"spam"]r'r$)z	{"spam":}rr$)z
[{"spam":]rr8)z{"spam":42 "ham"rr))z[{"spam":42]rr))z{"spam":42,}r&r)rr+r,r3rrr�test_unexpected_data�sF�
��zTestFail.test_unexpected_datac
Cs�ddddg}|ddg7}|D]�\}}}|�|j��}|�|�W5QRX|j}|�|j|�|�|j|�|�|jd�|�|j|d�|�t	|�d||d|f�qdS)	N)z[]]�
Extra datar)z{}}r:r)z[],[]r:r)z{},{}r:r)z	42,"spam"r:r)z	"spam",42r:�rr+r,r3rrr�test_extra_data�s,��
��zTestFail.test_extra_datac
Cs�ddddg}|D]�\}}}}|�|j��}|�|�W5QRX|j}|�|jd�|�|j|�|�|j|�|�|j|�|�t	|�d|||f�qdS)N)�!rrr)z !rrr)z
!rrr)z
  

     !r!r;r(rz,Expecting value: line %s column %d (char %d)r,)r
r4r�line�colrr5r6rrr�test_linecol�s$�
��zTestFail.test_linecolN)
�__name__�
__module__�__qualname__rrrr7r9r<r@rrrrrPs
"$rc@seZdZdS)�
TestPyFailN�rArBrCrrrrrD�srDc@seZdZdS)�	TestCFailNrErrrrrF�srFN)Ztest.test_jsonrrrr	rrDrFrrrr�<module>sT�H�