HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/Python311/Lib/test/test_json/__pycache__/test_decode.cpython-311.opt-1.pyc
�

��Vc����ddlZddlmZddlmZddlmZmZddlm	Z	Gd�d��Z
Gd�d	e
e��ZGd
�de
e��ZdS)�N)�StringIO)�OrderedDict)�PyTest�CTest)�supportc�\�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�ZdS)�
TestDecodec���|�dtj���}|�t	|tj����|�|tjd����dS)Nz1.1)�parse_float)�loads�decimal�Decimal�
assertTrue�
isinstance�assertEqual��self�rvals  �.D:\Python311\Lib\test\test_json\test_decode.py�test_decimalzTestDecode.test_decimal	s]���z�z�%�W�_�z�=�=�����
�4���9�9�:�:�:�����w��u�5�5�6�6�6�6�6�c��|�dt���}|�t|t����|�|d��dS)N�1)�	parse_intg�?)r�floatrrrrs  r�
test_floatzTestDecode.test_floatsO���z�z�#��z�/�/�����
�4��/�/�0�0�0�����s�#�#�#�#�#rc��|�|�d��i��|�|�d��g��|�|�d��d��dS)N�{}z[]z""�)rr)rs r�test_empty_objectszTestDecode.test_empty_objectssn��������D�)�)�2�.�.�.�������D�)�)�2�.�.�.�������D�)�)�2�.�.�.�.�.rc��d}gd�}|�|�|��t|����|�|�|d����|��|�|j�t|��d����|��|�|t���}|�|t
|����|�t|��t��|�|�|td����t
|����|�|�dt���t
����|�|�d	t���t
d
t
��fg����dS)Nz?{"xkd":1, "kcw":2, "art":3, "hxm":4, "qrt":5, "pad":6, "hoy":7}))�xkd�)�kcw�)�art�)�hxm�)�qrt�)�pad�)�hoy�c��|S�N���xs r�<lambda>z3TestDecode.test_object_pairs_hook.<locals>.<lambda>s��1�r)�object_pairs_hookc��|Sr1r2r3s rr5z3TestDecode.test_object_pairs_hook.<locals>.<lambda>s��A�rc��dSr1r2r3s rr5z3TestDecode.test_object_pairs_hook.<locals>.<lambda>%s��$�r)r6�object_hookrz
{"empty": {}}�empty)rr�eval�json�loadrr�type)r�s�p�ods    r�test_object_pairs_hookz!TestDecode.test_object_pairs_hooks���M��
1�
1�
1��������A����Q���0�0�0�������A����E�E�q�I�I�I������������:E�+�(�G�G�HI�	K�	K�	K�
�Z�Z��[�Z�
9�
9������[��^�^�,�,�,�����b���;�/�/�/�������A��0>��$�@�@�$�Q���	)�	)�	)�	
������D�K��H�H�$���	(�	(�	(�������O�6A�$�C�C�$�w��
�
�&>�%?�@�@�	B�	B�	B�	B�	Brc�b�|�d��}|�|ddd���dS)Nz,{   "key"    :    "value"    ,  "k":"v"    }�value�v)�key�k)rrrs  r�test_decoder_optimizationsz%TestDecode.test_decoder_optimizations.s:���z�z�H�I�I������g�3�7�7�8�8�8�8�8rc���||��}t|d��t|d��c\}}\}}|�||��|�||��dS)Nrr#)�sorted�assertIs)r�sourcerr�a�b�c�ds        r�check_keys_reusezTestDecode.check_keys_reuse5sd���u�V�}�}����Q����&��a��/�/����A���A��
�
�a������
�
�a������rc���d}|�||j��|jj���}|�||j��|�|j��dS)Nu2[{"a_key": 1, "b_é": 2}, {"a_key": 3, "b_é": 4}])rQrr<�decoder�JSONDecoder�decode�assertFalse�memo)rr?rSs   r�test_keys_reusezTestDecode.test_keys_reuse;si��D�����a���,�,�,��)�#�/�/�1�1�����a���0�0�0������&�&�&�&�&rc�R�d}d}|�|j||j|��dS)Nz
[1, 2, 3]5z
Extra data��assertRaisesRegex�JSONDecodeErrorr�rr?�msgs   r�test_extra_datazTestDecode.test_extra_dataBs1���������t�3�S�$�*�a�H�H�H�H�Hrc�R�d}d}|�|j||j|��dS)Nz	["abc\y"]�escaperZr]s   r�test_invalid_escapezTestDecode.test_invalid_escapeGs1���������t�3�S�$�*�a�H�H�H�H�Hrc�b�d}ddgidfD]$}|�t||j|���%dS)Nzthe JSON object must be strr#g��Q�	@)r[�	TypeErrorr)rr^rDs   r�test_invalid_input_typez"TestDecode.test_invalid_input_typeLsN��+����r�2�t�,�	F�	F�E��"�"�9�c�4�:�u�E�E�E�E�	F�	Frc�t�d�d���d��}|�|j��5}|�|��ddd��n#1swxYwY|�dt
|j����|�|j��5}|j�	t|����ddd��n#1swxYwY|�dt
|j����d�d�d���d����}|�|�|��d��|�|j�	t|����d��dS)Nz[1,2,3]z	utf-8-sigzutf-8�BOMz"{}"ru)
�encoderU�assertRaisesr\r�assertIn�str�	exceptionr<r=r�formatr)r�bom_json�cm�
bom_in_strs    r�test_string_with_utf8_bomz$TestDecode.test_string_with_utf8_bomQs����#�#�K�0�0�7�7��@�@��
�
�
�t�3�
4�
4�	!���J�J�x� � � �	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!��
�
�e�S���.�.�/�/�/�
�
�
�t�3�
4�
4�	/���I�N�N�8�H�-�-�.�.�.�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/����	/�	/�	/�	/��
�
�e�S���.�.�/�/�/��]�]�2�9�9�[�#9�#9�#@�#@��#I�#I�J�J�
�������J�/�/��:�:�:����������(<�(<�=�=�x�H�H�H�H�Hs$�A%�%A)�,A)�2(C&�&C*�-C*c�|�|j���}|�t|jdd��dS)N�*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaai�<��)r<rTri�
ValueError�
raw_decode)rrPs  r�test_negative_indexzTestDecode.test_negative_index_s7���I�!�!�#�#�����*�a�l�F�F�C�C�C�C�Crc�.�d}tj|��5|�d|z��|�t��5|�d|dzz��ddd��n#1swxYwYddd��dS#1swxYwYdS)Ni�rr#)r�adjust_int_max_str_digitsrrirt)r�	maxdigitss  r�test_limit_intzTestDecode.test_limit_intcs���	�
�
.�y�
9�
9�	2�	2��J�J�s�Y��'�'�'��"�"�:�.�.�
2�
2��
�
�3�)�a�-�0�1�1�1�
2�
2�
2�
2�
2�
2�
2�
2�
2�
2�
2����
2�
2�
2�
2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2�	2����	2�	2�	2�	2�	2�	2s5�3B
�
A2�&B
�2A6	�6B
�9A6	�:B
�
B�BN)�__name__�
__module__�__qualname__rrr rBrHrQrXr_rbrerqrvrzr2rrr	r	s�������7�7�7�
$�$�$�
/�/�/�
B�B�B�,9�9�9����'�'�'�I�I�I�
I�I�I�
F�F�F�
I�I�I�D�D�D�2�2�2�2�2rr	c��eZdZdS)�TestPyDecodeN�r{r|r}r2rrrrk��������rrc��eZdZdS)�TestCDecodeNr�r2rrr�r�lr�rr�)
r
�ior�collectionsr�test.test_jsonrr�testrr	rr�r2rr�<module>r�s�������������#�#�#�#�#�#�(�(�(�(�(�(�(�(�������`2�`2�`2�`2�`2�`2�`2�`2�F-�,�,�,�,�:�v�,�,�,�*�*�*�*�*�*�e�*�*�*�*�*r