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_decode.cpython-38.pyc
U

0D�g��@srddlZddlmZddlmZddlmZmZddlm	Z	Gdd�d�Z
Gdd	�d	e
e�ZGd
d�de
e�ZdS)�N)�StringIO)�OrderedDict)�PyTest�CTest)�supportc@steZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�ZdS)�
TestDecodecCs8|jdtjd�}|�t|tj��|�|t�d��dS)Nz1.1)Zparse_float)�loads�decimalZDecimal�
assertTrue�
isinstance�assertEqual��self�rval�r�9/opt/cppython/lib/python3.8/test/test_json/test_decode.py�test_decimal	szTestDecode.test_decimalcCs.|jdtd�}|�t|t��|�|d�dS)N�1)Z	parse_intg�?)r�floatr
rrr
rrr�
test_floatszTestDecode.test_floatcCs:|�|�d�i�|�|�d�g�|�|�d�d�dS)N�{}z[]z""�)rr)rrrr�test_empty_objectsszTestDecode.test_empty_objectscCs�d}dddddddg}|�|�|�t|��|�|j|d	d
�d�|�|�|jjt|�dd
�d�|�|j|td�}|�|t|��|�t|�t�|�|j|td
d
�d�t|��|�|jdtd�t��|�|jdtd�tdt�fg��dS)Nz?{"xkd":1, "kcw":2, "art":3, "hxm":4, "qrt":5, "pad":6, "hoy":7})Zxkd�)Zkcw�)Zart�)Zhxm�)Zqrt�)Zpad�)Zhoy�cSs|S�Nr��xrrr�<lambda>�z3TestDecode.test_object_pairs_hook.<locals>.<lambda>)�object_pairs_hookcSs|Sr rr!rrrr#r$cSsdSr rr!rrrr#%r$)r%Zobject_hookrz
{"empty": {}}�empty)rr�eval�json�loadrr�type)r�s�pZodrrr�test_object_pairs_hooks:������
��z!TestDecode.test_object_pairs_hookcCs |�d�}|�|ddd��dS)Nz,{   "key"    :    "value"    ,  "k":"v"    }�value�v)�key�k)rrr
rrr�test_decoder_optimizations.s
z%TestDecode.test_decoder_optimizationscCsF||�}t|d�t|d�\}}\}}|�||�|�||�dS)Nrr)�sortedZassertIs)r�sourcerr�a�b�c�drrr�check_keys_reuse5s"zTestDecode.check_keys_reusecCs<d}|�||j�|jj��}|�||j�|�|j�dS)Nu2[{"a_key": 1, "b_é": 2}, {"a_key": 3, "b_é": 4}])r9rr(�decoder�JSONDecoder�decodeZassertFalse�memo)rr+r:rrr�test_keys_reuse;s
zTestDecode.test_keys_reusecCs d}d}|�|j||j|�dS)Nz
[1, 2, 3]5z
Extra data��assertRaisesRegex�JSONDecodeErrorr�rr+�msgrrr�test_extra_dataBszTestDecode.test_extra_datacCs d}d}|�|j||j|�dS)Nz	["abc\y"]�escaper?rBrrr�test_invalid_escapeGszTestDecode.test_invalid_escapecCs.d}ddgidfD]}|�t||j|�qdS)Nzthe JSON object must be strrg��Q�	@)r@�	TypeErrorr)rrCr.rrr�test_invalid_input_typeLsz"TestDecode.test_invalid_input_typec	Cs�d�d��d�}|�|j��}|�|�W5QRX|�dt|j��|�|j��}|j�	t
|��W5QRX|�dt|j��d�d�d��d��}|�|�|�d�|�|j�	t
|��d�dS)Nz[1,2,3]z	utf-8-sigzutf-8�BOMz"{}"ru)
�encoder<�assertRaisesrArZassertIn�str�	exceptionr(r)r�formatr)rZbom_json�cmZ
bom_in_strrrr�test_string_with_utf8_bomQsz$TestDecode.test_string_with_utf8_bomcCs |j��}|�t|jdd�dS)NZ*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaai�<��)r(r;rK�
ValueErrorZ
raw_decode)rr8rrr�test_negative_index_s
zTestDecode.test_negative_indexc
CsTd}t�|��<|�d|�|�t��|�d|d�W5QRXW5QRXdS)Ni�rr)rZadjust_int_max_str_digitsrrKrQ)rZ	maxdigitsrrr�test_limit_intcs
zTestDecode.test_limit_intN)�__name__�
__module__�__qualname__rrrr-r2r9r>rDrFrHrPrRrSrrrrrsrc@seZdZdS)�TestPyDecodeN�rTrUrVrrrrrWksrWc@seZdZdS)�TestCDecodeNrXrrrrrYlsrY)
r	�ior�collectionsrZtest.test_jsonrr�testrrrWrYrrrr�<module>sc