HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/python3/dist-packages/simplejson/tests/__pycache__/test_scanstring.cpython-38.pyc
U

�O5[��@sHddlZddlmZddlZddlZddlmZmZGdd�de�Z	dS)�N)�TestCase)�b�PY3c@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�TestScanStringcCs|�tjj�dS)N)�_test_scanstring�
simplejson�decoderZ
py_scanstring��self�r�B/usr/lib/python3/dist-packages/simplejson/tests/test_scanstring.py�test_py_scanstringsz!TestScanString.test_py_scanstringcCs<tjjsdS|�tjj�|�ttj�dd�dt��dS)Nz""r)rrZc_scanstringrZ
assertTrue�
isinstance�strr	rrr�test_c_scanstringsz TestScanString.test_c_scanstringc	Cstjdkr"|�|dddd�d�n|�|dddd�d�|�|dddd�d�|�|d	ddd�d
�|�|dddd�d
�|�|dddd�d�|�|dddd�d�|�|dddd�d�|�|dddd�d�|�|dddd�d�|�|dddd�d�|�|dddd�d�|�|dddd�d�|�|dddd�d�|�|d ddd�d!�|�|d"d#dd�d$�|�|d%ddd�d&�|�|d'ddd�d(�|�|d)ddd�d*�|�|d+ddd�d,�|�|d-ddd�d.�tttd/d0��D]<}|�||d1d/dd2�|df�|�t||d1d/dd��q�|�t|d3d/dd�|�t|d4d/dd�|�t|d5d/dd�|�t|d6d/dd�|�t|d7d/dd�|�t|d8d/dd�|�t|d9d/dd�|�t|d:d/dd�tjdk�r�|�t|d;d/dd�|�t|d<d/dd�dS)=Ni��u"z𝄠x"�T)�z𝄠x�)r�z"\u007b")�{�z<"A JSON payload should be an object or array, not a string.")z:A JSON payload should be an object or array, not a string.�<z["Unclosed array"�)zUnclosed array�z["extra comma",])zextra comma�z["double extra comma",,])zdouble extra comma�z["Comma after the close"],)zComma after the close�z["Extra close"]])zExtra closerz{"Extra comma": true,})zExtra commarz:{"Extra value after close": true} "misplaced quoted value")zExtra value after close�z{"Illegal expression": 1 + 2})zIllegal expressionrz{"Illegal invocation": alert()})zIllegal invocationrz+{"Numbers cannot have leading zeroes": 013})z"Numbers cannot have leading zeroes�%z{"Numbers cannot be hex": 0x14})zNumbers cannot be hexrz2[[[[[[[[[[[[[[[[[[[["Too deep"]]]]]]]]]]]]]]]]]]]]r)zToo deep�z{"Missing colon" null})z
Missing colon�z{"Double colon":: null})zDouble colon�z {"Comma instead of colon", null})zComma instead of colon�z!["Colon instead of comma": false])zColon instead of commar"z["Bad value", truth])z	Bad value�r��"F��a�\z\uz\u0z\u01z\u012z\u0123z	\ud834\u"z
\ud834\x0123")�sys�
maxunicode�assertEqual�map�chr�range�assertRaises�
ValueError)r
�
scanstring�crrrrs�
�������������������������zTestScanString._test_scanstringcCs0|�ttjjddd�|�ttjjtd��dS)N�xxxruxxÿ)	r/r0�jsonrr1�UnicodeDecodeError�encoderZencode_basestring_asciirr	rrr�test_issue3623�s��zTestScanString.test_issue3623cCs<ttdttdd��}|dk	s t�|�ttjjd|d�dS)N�maxsizeZmaxintr3r)�getattrr)�AssertionErrorr/�
OverflowErrorr4rr1)r
r8rrr�
test_overflow�s
�zTestScanString.test_overflowcs�tjj�d��fdd�	}|dd�|dd�|dd	�|d
d�|dd
�|dd�|dd�ddg��|dd�ddg��|d�ddg�d�ddg�dd���t�dddd���t�dddd�dS)NTcsZ|g}ts|r|�|�d��|D]2}�|ddd�\}}��t|�|���||�q"dS)N�utf8rT)r�append�encoder+�len)ZgivenZexpect�	test_utf8Zgivens�res�count�r1r
rr�
assertScan�sz2TestScanString.test_surrogates.<locals>.assertScanz"z\ud834\u0079x"uz�yxz"z\ud834\udd20x"rz"z\ud834\ud834\udd20x"u	z�𝄠xz
"z\ud834x"uz�xz
"z\udd20x"uz�xu"z�x"u"z\ud834�x12345"r&uz�u	�x12345u
"z�\udd20x"u�xu"z�u�x"F)rAz	"z\ud83x"rz"z\ud834\udd2x")T)r4rr1�joinr/r0)r
rErrDr�test_surrogates�sj	�����������zTestScanString.test_surrogatesN)	�__name__�
__module__�__qualname__r
rrr7r<rGrrrrrs	lr)
r)Zunittestrrr4Zsimplejson.decoderZsimplejson.compatrrrrrrr�<module>s