403Webshell
Server IP : 209.209.40.120  /  Your IP : 216.73.217.112
Web Server : Microsoft-IIS/10.0
System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586
User : NEWWWW$ ( 0)
PHP Version : 8.3.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python312/Lib/site-packages/pandas/tests/io/json/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python312/Lib/site-packages/pandas/tests/io/json/__pycache__/test_pandas.cpython-312.pyc
�

0	�g�1��d�ddlZddlmZddlmZddlmZmZddlZddlZddl	Z	ddl
Z
ddlZddl
Z
ddlmZddlmZddlmcmZddlZddlmZmZmZmZmZmZmZmZm Z ddl!m"Z#ddl$m%Z%m&Z&dd	l'm(Z(dd
l)m*Z*d�Z+d�Z,Gd
�d�Z-d�Z.d�Z/d�Z0d�Z1ejdd�d��Z3d�Z4y)�N)�	timedelta)�Decimal)�BytesIO�StringIO)�using_pyarrow_string_dtype)�IS64)	�NA�	DataFrame�
DatetimeIndex�Index�
RangeIndex�Series�	Timestamp�
date_range�	read_json)�ArrowStringArray�StringArray)�ArrowStringArrayNumpySemantics)�ujson_dumpsc�p�tddgddggddg��}d}d}tjt|��5	t	|d	�
�ddd�tjt|��5t	|j
�d	�
�ddd�tjt|��5t	dd�
�}tj||�ddd�tjt|��5	t	d
d	�
�}ddd�tjt|��5	t	dd	�
�}tj|�ddd�y#t
$rY��wxYw#1swY��xYw#1swY��xYw#1swY��xYw#t
$rY��wxYw#1swY��xYw#t
$rY�zwxYw#1swYyxYw)N���a�b��columnsz[{"a": 1, "b": 2}
        {"a": 3, "b": 4}
        {"a": 5, "b": 6}
        {"a": 7, "b": 8}z�Passing literal json to 'read_json' is deprecated and will be removed in a future version. To read from a literal string, wrap it in a 'StringIO' object.��matchF��lines�!{"a": 1, "b": 2}
{"b":2, "a" :1}
T�4{"a\\":"foo\\","b":"bar"}
{"a\\":"foo\"","b":"bar"}
)r
�tm�assert_produces_warning�
FutureWarningr�
ValueError�to_json�assert_frame_equal)�expected�jsonl�msg�results    �BC:\Python312\Lib\site-packages\pandas/tests/io/json/test_pandas.py�test_literal_json_deprecationr.+s����1�a�&�1�a�&�)�C��:�>�H�
�E�	:��
�	#�	#�M��	=��	��e�5�)��
�	#�	#�M��	=�3��(�"�"�$�E�2�3�
�	#�	#�M��	=�0��@��M��
���f�h�/�0�
�	#�	#�M��	=��	��O���F��
�	#�	#�M��	=�0�	��D�E�R�F�	���f�h�/�0�0��'�	��	�����3�3��0�0���	��	��
����	��	��0�0�s��E�
E
�'E*�&$E6�-F�/
F�F,�!
F�.F,�
	E�E�E�E�E'�*E3�6E?�	F�F�
F�F�F�	F)�&F,�(F)�)F,�,F5c��|dvr|jd��}|dk(r#tt|j��|_t	j
||�y)N)�records�valuesT��dropr1)�reset_index�range�lenrr#r()r,r)�orients   r-�assert_json_roundtrip_equalr8XsN��
�&�&��'�'�T�'�2��
��� ��X�%5�%5�!6�7������&�(�+�c��eZdZejd��Zejd��Zejd��Zd�Zejjdgd��d��Zejjddd	g�d
��Zejjdddg�ejjd
ddgddggddgddggddgddgge
d�dge
d�dggg�d���Zejjdgd��d��Zd�Zejjddeg�ejjd d!dg�d"���Zejjddej(g�ejjd d!dg�d#���Zejjdd$ej,ed%g�ejjd d!dg�d&���Zejjd d!dg�d'��Zejjd d!dg�d(��Zejjd d!dg�d)��Zejjd d!dg�d*��Zejj;d+e�,�ejjd	d-d-gd.d/ggd-d0gd.d.ggd-d-gd.d.ggg�d1���Zejjd2d3d4d5jAd6g�dfd7d8g�d9��Z!ejjdd!dg�ejjd d!dg�d:���Z"ejjdd!dg�d;��Z#ejjd<ejHejHg�ejjdd!dg�d=���Z%ejjMe'd>�?�ejjd@gdA��dB���Z(dC�Z)dD�Z*dE�Z+dF�Z,dG�Z-dH�Z.dI�Z/dJ�Z0dK�Z1dL�Z2dM�Z3dN�Z4ejjddd$g�dO��Z5dP�Z6dQ�Z7ejjdej,eg�dR��Z8dS�Z9dT�Z:dU�Z;ejjdVd!e<dWgdX�Y�fde<dZg�fg�d[��Z=d\�Z>d]�Z?d^�Z@d_�ZAd`�ZBda�ZCejjdbdcddg�ejjded!dg�ejjdfeDj�eDj�e
g�dg����ZFejjdhgdi��dj��ZGejjdkgdl��dm��ZHdn�ZIejjdkgdl��do��ZJdp�ZKejjdqgdr��ds��ZLejjdqgdt��du��ZMdv�ZNdw�ZOdx�ZPejj�ejj�ejjdydzeSj�d{�|�gd}dXgd~eSj�d{�|�gg�d����ZUd��ZVd��ZWd��ZXejjded!dg�ejjdbdddcg�ejjd�eSj�eZg�d�����Z[ejjded!dg�ejjd�eSj�eZg�d����Z\d��Z]d��Z^d��Z_d��Z`d��Zad��Zbd��Zcejjd�e
d��e
d�d��|�e
d��g�d���Zdd��Zeejjd�efd�d����efd�d�d����efd�d����g�d���Zgd��Zhd��Ziejj�ejj�d����Zld��Zmd��Znejjd�eoj�dzeoj�d�zg�d���Zqejjd�d�d�g�d���Zrd��Zsd��Ztejj;d�eu�,�ejjd�gd��gd��gd��gd��gd��gd��gd��ej�d�d�d�gd�ej�d�d�d�gg	�ejjdd�ewg�d�����Zxd��Zyejjdd$dd�gd�d�gddgd�d�gd�d�gg�ejjd	ddgd�d�gd�d�gg�d����Zzd��Z{ejj;e|�d��?�ejjdgd���d„��Z}ejjdd!eedÜg�dĄ�Z~ejjdgdŢ�dƄ�ZdDŽZ�ejjd�e�dd�gd�d�ggddg�˫ddgdd�gd�d�ggd̜fe�dd�gd�d�ggddg�˫�jdͫddgdd�gd�d�ggd̜fe�dd�gd�d�ggddgddgddgg�Ϋddgdd�gd�d�ggd̜fe<gdϢdЬѫd�gdϢdҜfe<gdϢdЬѫ�jdͫd�gdϢdҜfe<dd�gd�ddgddgg�ӫd�dd�gdҜfg�dԄ�Z�ejjd
e�dd�gd�d�ggddg�˫e�dd�gd�d�ggddg�˫�jdͫe�dd�gd�d�ggddgddgddgg�Ϋe<gdϢdЬѫe<gdϢdЬѫ�jdͫe<dd�gd�ddgddgg�ӫg�dՄ�Z�ejjddd	g�dք�Z�ejjdd�dg�d؄�Z�ejjddd�g�ejjdd!dg�dڄ��Z�dۄZ�ejjd�gdݢ�dބ�Z�ejjd�gd��d��Z�ejjd�d�d�g�d��Z�ejjd�d�d�e�jdd�ejj;d�?���e�jd�d�ejj;d�?���g�d��Z�ejjd�gd��d��Z�ejjMe|�d�?�ejjd�gd��d���Z�d�Z�d�Z�d��Z�ejjd�e�gdϢgd��d���d�fg�d���Z�ejj�d���Z�d��Z�d��Z�d��Z�d��Z�ejj�de<�d�d�d�d���dfe<�d�d�d�d���d	fe��d
�dg�d�d
gg��dfe��d�dg�d�dgg��dfg��d��Z��d�Z�ejjdg�d���d��Z�ejjdg�d���d��Z��d�Z�y$(�TestPandasContainerc��ttd��D��cic]4\}}|tjj	|�jd���6}}}dgdzdgdzzdgdzzdgdzz}tt
|��|d	<tjdd
��|d<t|tj|d	�
���Scc}}w)N�ABCD��bah��bar�baz�foo��E�int64��dtype�sort��name��index)�	enumerate�list�np�random�default_rng�standard_normal�reversed�aranger
�pd�CategoricalIndex)�self�i�c�data�cats     r-�categorical_framez%TestPandasContainer.categorical_frameas���"�$�v�,�/�
���1�
�r�y�y�$�$�Q�'�7�7��;�;�
��
��g��k�U�G�a�K�'�5�'�A�+�5���"��D����#��'��S�	��y�y��7�3��V����R�%8�%8��3�%G�H�H��
s�9Cc���tdtjdtj��zt	dd��d��}|j
j
d�|_|S)Ng�������?�
rG�
2020-01-01��periods�ts)rMrK)rrPrU�float64rrM�
_with_freq)rX�sers  r-�datetime_seriesz#TestPandasContainer.datetime_serieslsO����"�)�)�B�b�j�j�1�1��\�2�6��
��
�I�I�(�(��.��	��
r9c	��ttjjd�j	d�tt
d�t��tddd���	�}|jjd�|_	|S)
Nr)r>�r=rG�
2000-01-01r>�B�rb�freq�rrM)r
rPrQrRrSrrO�objectrrMre)rX�dfs  r-�datetime_framez"TestPandasContainer.datetime_framexsb����I�I�!�!�!�$�4�4�W�=��$�v�,�f�5��\�2�C�@�
��
�8�8�&�&�t�,����	r9c��tddgddggddgddg�	�}t|j|�
��}t||�
�}|j	�}t|||�y)NrrrZ�dz	index " 1z	index / 2za \ bzy / z�rMr�r7�r
rr'r�copyr8�rXr7rpr[r,r)s      r-� test_frame_double_encoded_labelsz4TestPandasContainer.test_frame_double_encoded_labels�sf��
��3�Z�#�s��$���,��w�'�
����
�
�&�
�1�2���4��/���7�7�9��#�F�H�f�=r9r7)�splitr0r1c��tddgddggddgddg��}t|j|�	��}t||�	�}|j	�}t|||�y)
NrrrZrsr�x�yrtrurvrxs      r-�test_frame_non_unique_indexz/TestPandasContainer.test_frame_non_unique_index�s]��
��c�
�S�#�J�/��1�v��S�z�
R����
�
�&�
�1�2���4��/���7�7�9��#�F�H�f�=r9rMrc���tddgddggddgddg��}d	|�d
�}tjt|��5|j	|��ddd�y#1swYyxYw)
NrrrZrsrr|r}rtz+DataFrame index must be unique for orient='�'rru�r
�pytest�raisesr&r'�rXr7rpr+s    r-�"test_frame_non_unique_index_raisesz6TestPandasContainer.test_frame_non_unique_index_raises�sd��
��c�
�S�#�J�/��1�v��S�z�
R��;�F�8�1�E��
�]�]�:�S�
1�	&��J�J�f�J�%�	&�	&�	&���A�Arzr1r[rrrZrs��?�@g@g@r��20130101�20130102c��t|ddgddg��}tt|j|���|dg��}|dk(rot|�}|jdd�dfj
d	k(rT|j
d|jdd�dfjtj�d
z�n|dk(r|}ddg|_
tj|�y)
Nrrr|rtru)r7�
convert_datesr1r�datetime64[ns]�@Brzzx.1)
r
rrr'�ilocrH�isetitem�astyperPrFrr#r()rXr7r[rpr,r)s      r-�test_frame_non_unique_columnsz1TestPandasContainer.test_frame_non_unique_columns�s����t�A�q�6�C��:�
>����R�Z�Z�v�Z�.�/��s�e�
���X�� ���H��}�}�Q��T�"�(�(�,<�<�
�!�!�!�X�]�]�1�a�4�%8�%?�%?����%I�W�%T�U�
�w�
��H� #�U�|�H��
���f�h�/r9)rMrr0c���tddgddggddgddg��}d	|�d
�}tjt|��5|j	|��ddd�y#1swYyxYw)
NrrrZrsrrr|rtz-DataFrame columns must be unique for orient='r�rrur�r�s    r-�$test_frame_non_unique_columns_raisesz8TestPandasContainer.test_frame_non_unique_columns_raises�sd��
��c�
�S�#�J�/��1�v��S�z�
R��=�f�X�Q�G��
�]�]�:�S�
1�	&��J�J�f�J�%�	&�	&�	&�r�c�N�|j�|jd��k(sJ�y)Nrru�r')rX�float_frames  r-�test_frame_default_orientz-TestPandasContainer.test_frame_default_orient�s'���"�"�$��(;�(;�9�(;�(M�M�M�Mr9rHF�convert_axesTc�v�t|j|���}t||||��}|}t|||�y�Nru�r7r�rH�rr'rr8)rXr7r�rHr�r[r,r)s        r-�test_roundtrip_simplez)TestPandasContainer.test_roundtrip_simple�s>����+�+�6�+�:�;���4��\�QV�W����#�F�H�f�=r9c�v�t|j|���}t||||��}|}t|||�yr�r�)rXr7r�rH�	int_framer[r,r)s        r-�test_roundtrip_intframez+TestPandasContainer.test_roundtrip_intframe�s>���	�)�)��)�8�9���4��\�QV�W����#�F�H�f�=r9N�U3c
�H�ttjd�td�D�cgc]
}t	|���c}td�D�cgc]
}t	|���c}|��}t|j
|���}t||||��}|j�}|s|jtj�}|ra|dvr]|jjtj�|_|jjtj�|_nk|dk(r1|r/|jjtj�|_n5|r3|d	k(r.|jjtj�|_t|||�ycc}wcc}w)
N)��ririr�)rrMrHrur�rtr0rz)r
rP�zerosr5�strrr'rrwr�rFrrMr8)	rXr7r�rHrYrpr[r,r)s	         r-�test_roundtrip_str_axesz+TestPandasContainer.test_roundtrip_str_axes�s7����H�H�X��%*�1�X�.��S��V�.�#(��:�.�a�3�q�6�.��	
����
�
�&�
�1�2���4��\�QV�W���7�7�9������r�x�x�0�H��V�';�;�'�/�/�6�6�r�x�x�@�H��%�^�^�2�2�2�8�8�<�H�N�
�y�
 �\�'�/�/�6�6�r�x�x�@�H��
�f��/�'�/�/�6�6�r�x�x�@�H��#�F�H�f�=��3/��.s�F
�Fc�p�|dvr3|jtjjd|�d����t	|j|���}t
|||��}|j�}|jj|stnd�|_d|j_t|||�y)Nrtz.Can't have duplicate index values for orient 'z')��reasonru�r7r��string[pyarrow_numpy])
�applymarkerr��mark�xfailrr'rrwrMr�r�rKr8)	rX�requestr7r]r��using_infer_stringr[r,r)s	         r-�test_roundtrip_categoricalz.TestPandasContainer.test_roundtrip_categorical�s���
�)�)�������!�!�K�F�8�SU�V�"��
��)�1�1��1�@�A���4��\�J��$�)�)�+��!���.�.�)�C�/F�
���#�����#�F�H�f�=r9c�,�t�}t|j|���}t|||��}|dk(r't	g|rt
nt��}t||��}n|dvrt�}n|j�}tj||�y)Nrur�rzrGrt)
r
rr'rr�floatrorwr#r()rXr7r��empty_framer[r,�idxr)s        r-�test_roundtrip_emptyz(TestPandasContainer.test_roundtrip_emptys����k����+�+�6�+�:�;���4��\�J���W����L�5�f�F�C� �s�C�8�H�
�+�
+� �{�H�"�'�'�)�H�
���f�h�/r9c�.�t|j|���}t|||��}|j�}|sM|jjtj�dz}|dk7r|jt�}||_t|||�y)Nrur�r�rz)rr'rrwrM�viewrPrFr�r�r8)rXr7r�rqr[r,r)r�s        r-�test_roundtrip_timestampz,TestPandasContainer.test_roundtrip_timestamp s�����.�.�f�.�=�>���4��\�J��!�&�&�(����.�.�%�%�b�h�h�/�7�:�C��� ��j�j��o�� �H�N�#�F�H�f�=r9c�^�tgd��}gd�gd�gd�gd�d�}t||��}t|j|���}t	|||�	�}|j�}|jdi|jd
�jtj���}t|||�y)N)rrrZrs�e)���?�@�@�@)r�r�r�r�r�)�foo1�foo2�foo3�foo4�foo5)TFTFT��Ark�C�D)r[rMrur��number�)rr
rr'rrw�assign�
select_dtypesr�rPrFr8)	rXr7r�rMr1rpr[r,r)s	         r-�test_roundtrip_mixedz(TestPandasContainer.test_roundtrip_mixed1s����/�0��*�*�9�1�	
���F�%�
0����
�
�&�
�1�2���4��\�J���7�7�9��"�8�?�?�W�X�%;�%;�H�%E�%L�%L�R�X�X�%V�W��#�F�H�f�=r9z9#50456 Column multiindex is stored and loaded differently)r�r��2022�JAN�FEB�2023c���tddgddggtjj|���}t	|jd���}t
|d��}tj||�y)Nrrr�rirrzru)	r
rV�
MultiIndex�from_arraysrr'rr#r()rXrrpr[r,s     r-�test_roundtrip_multiindexz-TestPandasContainer.test_roundtrip_multiindexEsc�����V�a��V���M�M�-�-�g�6�
����
�
�'�
�2�3���4��0��
���f�b�)r9zdata,msg,orient)z
{"key":b:a:d}zExpected object or valuerzO{"columns":["A","B"],"index":["2","3"],"data":[[1.0,"1"],[2.0,"2"],[null,"3"]]}�|z;Length of values \(3\) does not match length of index \(2\))zW{"columns":["A","B","C"],"index":["1","2","3"],"data":[[1.0,"1"],[2.0,"2"],[null,"3"]]}z+3 columns passed, passed data had 2 columnsrz)zN{"badkey":["A","B"],"index":["2","3"],"data":[[1.0,"1"],[2.0,"2"],[null,"3"]]}zunexpected key\(s\): badkeyrzc��tjt|��5tt	|�|��ddd�y#1swYyxYw)Nrru)r�r�r&rr)rXr[r+r7s    r-�$test_frame_from_json_bad_data_raisesz8TestPandasContainer.test_frame_from_json_bad_data_raisesZs6��F�]�]�:�S�
1�	5��h�t�n�V�4�	5�	5�	5�s	�<�Ac�x�tddggd�g�}tt|j|���|||��}t	j
|jd�sJ�tddggd	�g�}tt|j|���|||��}t	j
|jd�sJ�y)
Nrr�rir@�rur��rr�1�2)�4�5�6)r
rrr'rP�isnanr�)rXr7r�rH�num_dfr,�obj_dfs       r-�!test_frame_from_json_missing_dataz5TestPandasContainer.test_frame_from_json_missing_data�s����Q��F�I�.�/����V�^�^�6�^�2�3��%��	
���x�x����D�)�*�*�*��S�#�J��8�9����V�^�^�6�^�2�3��%��	
���x�x����D�)�*�*�*r9c��ttd�|��}ttjg�}tj||�y)Nz[null]rG)rrr
rP�nanr#r()rXrHr,r)s    r-�(test_frame_read_json_dtype_missing_valuez<TestPandasContainer.test_frame_read_json_dtype_missing_value�s5���8�H�-�U�;���b�f�f�X�&��
���f�h�/r9�infc���tddggd�g�}||jd<t|j��}t	||��}tj|jd�sJ�y)Nrrr�r�rG)r
�locrr'rrPr�r�)rXr�rHrpr[r,s      r-�test_frame_infinityz'TestPandasContainer.test_frame_infinity�s[��
��A��	�*�
+������t����
�
��%���4�u�-���x�x����D�)�*�*�*r9z$not compliant on 32-bit, xref #15865r�zvalue,precision,expected_val))gffffff�?rr�)g333333�?rr�)g333333��rg�)gףp=
��?rr�)g�C�l��?r�r�)g�������?rDr�c�Z�td|ig�}|j|��}|d|�d�k(sJ�y)N�a_float)�double_precisionz{"a_float":{"0":�}}�r
r')rX�value�	precision�expected_valrp�encodeds      r-�"test_frame_to_json_float_precisionz6TestPandasContainer.test_frame_to_json_float_precision�s>����E�*�+�
,���*�*�i�*�8���.�|�n�D�A�A�A�Ar9c��tgd��}d}tjt|��5|j	d��ddd�y#1swYyxYw�N�rrr�z+Invalid value 'garbage' for option 'orient'r�garbagerur�)rXrpr+s   r-�test_frame_to_json_exceptz-TestPandasContainer.test_frame_to_json_except�sB��
�y�
!��;��
�]�]�:�S�
1�	)��J�J�i�J�(�	)�	)�	)���A�Ac���tddg��}|jrJ�t|j��}t	|t|j���}tj||d��y)N�jim�joerrGF��check_index_type)	r
�_is_mixed_typerr'r�dict�dtypesr#r()rXrpr[r,s    r-�test_frame_emptyz$TestPandasContainer.test_frame_empty�sU��
��u�~�
.���$�$�$�$���
�
��%���4�t�B�I�I��7��
���f�b�5�Ar9c�X�tdgig��}|jd��}d}||k(sJ�y)N�testrLrruz{"test":{}}r��rXrpr,r)s    r-�test_frame_empty_to_jsonz,TestPandasContainer.test_frame_empty_to_json�s5��
���|�2�
.�����9��-�� ����!�!�!r9c��tddg��}|djd�|d<|jsJ�|j�}t	j
t
t|�t|j���|d��y)Nrrr�i8rGFr)
r
r�rr'r#r(rrrr)rXrpr[s   r-�test_frame_empty_mixedtypez.TestPandasContainer.test_frame_empty_mixedtype�sl��
��u�~�
.���u�I�$�$�T�*��5�	�� � � � ��z�z�|��
����h�t�n�D����O�<��"�	
r9c��gd�gd�gd�gd�g}t|td�gd���}|jsJ�|j�}dD]A}t	|j|�	��}t
||d
��}tj||��Ctt|��|_t	|jd�	��}t
|dd
��}tj||�t|jd
�|_
t	|jd�	��}t
|dd
��}tj||�y)N)r_rrC皙�����?g{�G�z�?)�rrAg�������?g{�G�z�?)r>r�rBg333333�?g���Q��?)�(ri�quxg�������?g{�G�z�?�abcd)�1st�2nd�3rd�4th�5thrt�rzrMrruFr�r0rr1)r
rOrrwrr'rr#r(r
r6rM�shaper)rX�valsrp�rightr7�inp�lefts       r-�test_frame_mixedtype_orientz/TestPandasContainer.test_frame_mixedtype_orient�s��%�%�%�%�	
�����V��.Q�
��� � � � ����	��3�	/�F��2�:�:�V�:�4�5�C��S��e�D�D��!�!�$��.�	/�
!��R��)����r�z�z��z�3�4����Y�U�C��
���d�E�*�"�2�8�8�A�;�/��
��r�z�z��z�2�3����X�E�B��
���d�E�*r9c��tdd�}ttj|�d��}t	gd�gd�gd�gd�gd�ggd	�|�
�}td�j
d�|d
<td�|jd|jjd
�f<|d
|d<tj|jd|jjd�f<|ddd�}tjj|d�}t|�}t!j"||�|j%dgd��}tjj|d�}t|�}	t!j"||	d��y)Nz
2000-01-03z
2000-01-07�rm)g�É��?gz�~Kc�?g�X�7���?g�H/�ƿ)g�|�Rпg����X���gs�B�f��g����(�ƿ)g��<�1=�?g����9�?g���g?�?gL��ł
��)g���J�Q��g�[r?T��?gj<�DH>�?g-���ѿ)gI��E�x�?gW!i`y��gP0�4���?g�+�]�5�?r�rnz19920106 18:21:32.12�ns�dater�r��modifiedr�io�jsonr[ztsframe_v012.json)�axisztsframe_iso_v012.jsonF)�check_column_type)rrrP�asarrayr
r�as_unitr�r�get_locrV�NaT�os�path�joinrr#r(r3)
rX�datapath�dtirp�dirpath�v12_json�df_unser�df_iso�v12_iso_json�df_unser_isos
          r-�test_v12_compatz#TestPandasContainer.test_v12_compat�s@����|�4���B�J�J�s�O�$�7��
�A�C�?�B�A�
�)��

���5�6�>�>�t�D��6�
�1:�:�1F�����2�:�:�%�%�f�-�-�.��F���:��57�V�V�����2�:�:�%�%�j�1�1�2��4���0���7�7�<�<��)<�=���X�&��
���b�(�+����*��A��.���w�w�|�|�G�-D�E�� ��.��
���f�l�e�Lr9c	�v�tddd��}tt|�d��}tgd�gd�gd�gd	�gd
�gd�d�|�
�}|jj|stjnd�|_t|jd���}t|d��}tj||dddd��y)N�20000101r_�hrlr#)
g}S?w�g��b�m��?gz(~J�	�?g��1���?gk*��M�gv�T�j��?g7j	" Y�?gp�+KS(�g񒬁���?gZt�S�y�)
i�L,i_�}i4z�iKe�iL&�i�%gi��DiY)Li;ei�D�)
�78c608f1�64a99743�13d2ff52�ca7f4af2�97236474�bde7e214�1a6bde47�b1190be5�7a669144�8d64d068)
gD!����gIxJ ��g��%�
@g��P�\<�g�����޿gPl����?gF�z�n�?g5mH/�?gp�H�%��g�I�?)
�14f04af9�d085da90�4bcfac83�81504caf�2ffef4a9�08e2f5c4�07e1af03�addbd4a7�1f6a09ba�4bfc4d87)
i�/i���i�Yi�6i�I�i;�>i��	i�(�i0q{iѪ�)�float_1�int_1�str_1�float_2�str_2�int_2rLr�rzruT)rr*�	by_blocks�check_exact)
rrrOr
rr�rP�str_rr'rr#r()rXr�rM�df_mixedr[�df_roundtrips      r-�test_blocks_compat_GH9037z-TestPandasContainer.test_blocks_compat_GH9037s����:�r��<���d�5�k��5���������{I
�T�WL
��^$�+�+�2�2�-�B�G�G�3J�
�����(�(��(�8�9�� ��g�6��
�����!�"���
	
r9c�Z�Gd�d�}d}||�}td|jgi�}|j�d|�d�k(sJ�td|gi�}d}tjt
|��5|j�ddd�t|gd	gd
�ddg��}tjt
|��5|j�ddd�|jt�
�}d|�d�}	||	k(sJ�|jt�
�d|�d�k(sJ�y#1swY��xYw#1swY�XxYw)Nc� �eZdZdd�Zdefd�Zy)�FTestPandasContainer.test_frame_nonprintable_bytes.<locals>.BinaryThing�returnNc�F�||_tj|�|_y�N)�hexed�bytes�fromhex�binary)rXrds  r-�__init__zOTestPandasContainer.test_frame_nonprintable_bytes.<locals>.BinaryThing.__init__s��"��
�#�m�m�E�2��r9c��|jSrc)rd�rXs r-�__str__zNTestPandasContainer.test_frame_nonprintable_bytes.<locals>.BinaryThing.__str__�s���z�z�!r9�raN)�__name__�
__module__�__qualname__rhr�rkr�r9r-�BinaryThingr`~s��
3�
"��
"r9rp�574b4454ba8c5eb4f98a8f45r�z{"A":{"0":"�"}}z6Unsupported UTF-8 sequence length when encoding stringrr�r�rkrkr��default_handlerz"},"B":{"0":1}})r
rdr'r�r��
OverflowErrorr�)
rXrprd�binthing�df_printable�df_nonprintabler+r[r,r)s
          r-�test_frame_nonprintable_bytesz1TestPandasContainer.test_frame_nonprintable_bytes{sD��	"�	"�+���u�%��!�#����'7�!8�9���#�#�%�=���u�)E�E�E�E�$�S�8�*�$5�6��F��
�]�]�=��
4�	&��#�#�%�	&��H�:�Q�C�8�3��*�M��
�]�]�=��
4�	�����	�!�(�(��(�=��"�5�'��/����!�!�!����S��1��u�g�%8�9�
:�	
�
:�	&�	&��
	�	�s�1D�9D!�D�!D*c�h�tddzdgddgi�j�}dddz�d�}||k(sJ�y)NrAi��rrCi9�{"z":{"0":1},"foo":{"0":1337}}r��rXr,r)s   r-�test_label_overflowz'TestPandasContainer.test_label_overflow�sH���E�F�N�Q�C����?�@�H�H�J������(�(H�I����!�!�!r9c
���tddgddg��}d}tjt|��5|j	d��ddd�tj|tt|j	d	���d	d
���tt|j	d���dd
��}tj|j|j�y#1swY��xYw)
NrrrrLz.Series index must be unique for orient='index'rrMrurz�series)r7�typr0)rr�r�r&r'r#�assert_series_equalrr�assert_equalr1)rX�sr+�unserializeds    r-�test_series_non_unique_indexz0TestPandasContainer.test_series_non_unique_index�s����C��:�a��V�,��>��
�]�]�:�S�
1�	&�
�I�I�W�I�%�	&�	���
������'��2�3�G��
�	
�!��Q�Y�Y�i�Y�0�1�)��
��	������,�"5�"5�6�	&�	&�s�C�C c�N�|j�|jd��k(sJ�y)NrMrur�)rX�
string_seriess  r-�test_series_default_orientz.TestPandasContainer.test_series_default_orient�s'���$�$�&�-�*?�*?�w�*?�*O�O�O�Or9c��t|j|���}t|d|��}|}|r$|dvr |jj	d�|_|dvr|jd��}|d	k7rd|_tj||�y)
Nrur��r�r7rr��r1r0Tr2rz)	rr'rrMr�r4rKr#r�)rXr7r�r�r[r,r)s       r-�test_series_roundtrip_simplez0TestPandasContainer.test_series_roundtrip_simple�s����
�-�-�V�-�<�=���4�X�f�=�� ���&�,I�"I�%�^�^�2�2�3J�K�H�N��*�*��+�+��+�6�H��W�� �H�M�
���v�x�0r9c���t|j|���}t|d||��}|}|dvr|jd��}|dk7rd|_tj||�y)Nrur�)r�r7rHr�Tr2rz�rr'rr4rKr#r�)rXr7rH�
object_seriesr[r,r)s       r-�test_series_roundtrip_objectz0TestPandasContainer.test_series_roundtrip_object�sj���
�-�-�V�-�<�=���4�X�f�E�J�� ���*�*��+�+��+�6�H��W�� �H�M�
���v�x�0r9c�B�tggtj��}t|j	|���}t|d|��}|j
d��}|dvr.|jjtj�|_tj||�y)N�rMrHrur�r�Tr2rz)rrPrdrr'rr4rMr�r#r�)rXr7�empty_seriesr[r,r)s      r-�test_series_roundtrip_emptyz/TestPandasContainer.test_series_roundtrip_empty�s���b��"�*�*�=����,�,�F�,�;�<���4�X�f�=���+�+��+�6���g��%�^�^�2�2�2�:�:�>�H�N�
���v�x�0r9c���t|j|���}t|d|��}|}|dvr|jd��}|dk7rd|_tj||�y)Nrur�r�r�Tr2rzr�)rXr7rgr[r,r)s      r-� test_series_roundtrip_timeseriesz4TestPandasContainer.test_series_roundtrip_timeseries�sh����/�/�v�/�>�?���4�X�f�=��"���*�*��+�+��+�6�H��W�� �H�M�
���v�x�0r9c��ttd�gd���}t|j|���}t	|d|��}|j�}|dvr|j
d�	�}tj||�y)
Nr��rrrZrsr��frLrur�r�r�Tr2)	rr5rr'rrwr4r#r�)rXr7rHr�r[r,r)s       r-�test_series_roundtrip_numericz1TestPandasContainer.test_series_roundtrip_numeric�sm���5��8�#A�B����	�	��	�0�1���4�X�f�=���6�6�8���*�*��+�+��+�6�H�
���v�x�0r9c��tgd��}d}tjt|��5|j	d��ddd�y#1swYyxYwr�)rr�r�r&r')rXr�r+s   r-�test_series_to_json_exceptz.TestPandasContainer.test_series_to_json_except�sB���9���;��
�]�]�:�S�
1�	(�
�I�I�Y�I�'�	(�	(�	(�r�c��tgd��}tt|j��dd��}t	j
||d��y)N��=
ףp=@r�r�r�T)r��
precise_floatFr)rrrr'r#r��rXr�r,s   r-�#test_series_from_json_precise_floatz7TestPandasContainer.test_series_from_json_precise_floats8���%�&���8�A�I�I�K�0�h�d�S��
���v�q�5�Ar9c���tgd��}tt|j��dtj
��}tdgdz�}t
j||�y)Nr�r��r�rHrir�)rrrr'rPrFr#r�)rXr�r,r)s    r-�test_series_with_dtypez*TestPandasContainer.test_series_with_dtypesI���%�&���8�A�I�I�K�0�h�b�h�h�O���1�#��'�?��
���v�x�0r9zdtype,expectedrjr�rGl,�Uqc��tdgd��}t|j��}t|d|��}t	j
||�y)Nrjr�rGr�r�)rrr'rr#r�)rXrHr)r�r[r,s      r-�test_series_with_dtype_datetimez3TestPandasContainer.test_series_with_dtype_datetime
sA��
�L�>�)9�:����	�	��$���4�X�U�;��
���v�x�0r9c��tgd�gd�g�}tt|j��d��}t	j
||�y)Nr�T)r��r
rrr'r#r(�rXrpr,s   r-�"test_frame_from_json_precise_floatz6TestPandasContainer.test_frame_from_json_precise_floats:��
�*�,>�?�
@���8�B�J�J�L�1��F��
���f�b�)r9c��ttd�gd�d��}tt|j	��d��}tj||�y)Nr�r�rFr��r�)rr5rrr'r#r�r�s   r-�test_typzTestPandasContainer.test_typs<���5��8�#A��Q���8�A�I�I�K�0�d�;��
���v�q�)r9c�2�tgd�gd�g�}tt|j���}t	j
||�tgd�gd�d�gd���}tt|j���}t	j
||�y)Nr�r��rr)r�rkr�rLr�r�s   r-�test_reconstruction_indexz-TestPandasContainer.test_reconstruction_index$sl��
�	�9�-�
.���8�B�J�J�L�1�2��
���f�b�)�
�Y�Y�7��
O���8�B�J�J�L�1�2��
���f�b�)r9c��tjd�5}|||fD]}|j|�t|�� 	ddd�y#1swYyxYw)N�	test.json)r#�ensure_cleanr'r)rXr�r�rqr0rps      r-�	test_pathzTestPandasContainer.test_path-sN��
�_�_�[�
)�	 �T�"�I�~�>�
 ���
�
�4� ��$��
 �	 �	 �	 �s�'A�Ac��t|j��}t|�}tj||�t|j��}t|d��}tj
||d��|j�J�y)Nr�r�F)�check_names)rr'rr#r(r�rK)rXrgrqr(r,s     r-�test_axis_datesz#TestPandasContainer.test_axis_dates3sq����.�.�0�1���4���
���f�n�5���/�/�1�2���4�X�.��
���v��E�J��{�{�"�"�"r9c��|}td�jd�|d<t|j��}t	|�}tj||�d|d<t|jd���}t	|d��}|j�}|djjd	�|d<|djd
�|d<tj||�ttd�jd�|j��}t|j��}t	|d�
�}tj||�y)Nr�r$r%r�rC��	date_unitF�r�rrFrLr�r�)rr,rr'rr#r(rwr1r�r�rrMr�)rXrgrqrpr(r,r)rcs        r-�test_convert_datesz&TestPandasContainer.test_convert_dates?s��
���z�*�2�2�4�8��6�
���
�
��%���4���
���f�b�)���5�	���
�
�T�
�2�3���4�u�5���7�7�9��#�F�+�2�2�7�7��=����"�5�/�0�0��9����
���f�h�/��I�j�)�1�1�$�7��?T�?T�
U����
�
��%���4�X�.��
���v�r�*r9�date_format�epoch�iso�	as_object�date_typc���|ddd��tjg}|r|jd�t||��}|j	|��}|dk(rd}nd	}|r|jd
d�}||k(sJ�y)Ni�r)�year�month�dayrrL�r�r�z+{"1577836800000":1577836800000,"null":null}zA{"2020-01-01T00:00:00.000":"2020-01-01T00:00:00.000","null":null}�}�	,"a":"a"})rVr.�appendrr'�replace)rXr�r�r�r[rfr,r)s        r-�test_date_index_and_valuesz.TestPandasContainer.test_date_index_and_valuesWs����d�!��3�R�V�V�<����K�K����T��&�������5���'�!�D�H�T�
���'�'��[�9�H���!�!�!r9�
infer_word)�
trade_timer%�datetime�sold_atr&�	timestamp�
timestampsc���dd|diddig}tdtd�gdtjggd|g��}t	tt
|���d|g}tj||�y)N�idrl$�A�rz
2002-11-08r)	r
rrVr.rrrr#r()rXr�r[r)r,s     r-�test_convert_dates_inferz,TestPandasContainer.test_convert_dates_infernsv���q�*�m�4�t�Q�i�@�����<�(�
)�A�r�v�v�;�7�$�
�AS�
���8�K��$5�6�7��z�8J�K��
���f�h�/r9zdate,date_unit))�20130101 20:43:42.123N)�20130101 20:43:42r�)r��ms)z20130101 20:43:42.123456�us)z20130101 20:43:42.123456789r$c���|}t|�jd�|d<tj|jd|j
j
d�f<tj|jd|j
j
d�f<|r|jd|��}n|jd��}tt|��}|j�}tj||�y)Nr$r%rr@r��r�r�r�)
rr,rVr.r�rr-r'rrrwr#r()rXr%r�rqrpr(r,r)s        r-�test_date_format_framez*TestPandasContainer.test_date_format_frame�s������t�_�,�,�T�2��6�
�13�������2�:�:�%�%�f�-�-�.�13�������2�:�:�%�%�f�-�-�.���:�:�%�9�:�E�D��:�:�%�:�0�D��8�D�>�*���7�7�9��
���f�h�/r9c��|}d}tjt|��5|jdd��ddd�y#1swYyxYw)N�*Invalid value 'foo' for option 'date_unit'rr�rCr�)r�r�r&r')rXrqrpr+s    r-�test_date_format_frame_raisesz1TestPandasContainer.test_date_format_frame_raises�s?��
��:��
�]�]�:�S�
1�	;��J�J�5�E�J�:�	;�	;�	;�s	�=�Ac��tt|�jd�|j��}tj
|jd<tj
|jd<|r|jd|��}n|jd��}tt|�d�	�}|j�}tj||�y)
Nr$rLrr@r�r�r�r�r�)
rrr,rMrVr.r�r'rrrwr#r�)rXr%r�rgrcr(r,r)s        r-�test_date_format_seriesz+TestPandasContainer.test_date_format_series�s����I�d�O�+�+�D�1��9N�9N�
O���V�V�����
��V�V�����
���:�:�%�9�:�E�D��:�:�%�:�0�D��8�D�>�x�8���7�7�9��
���v�x�0r9c���ttd�|j��}d}tjt
|��5|j
dd��ddd�y#1swYyxYw)Nr�rLr�rr�rCr�)rrrMr�r�r&r')rXrgrcr+s    r-�test_date_format_series_raisesz2TestPandasContainer.test_date_format_series_raises�sR��
�I�5�6�o�>S�>S�
T��:��
�]�]�:�S�
1�	;��J�J�5�E�J�:�	;�	;�	;�s�A�A$�unit)r�r�r�r$c���|}td�jd�|d<|jjd�}td�|jd|f<td�|jd|f<t
j|jd|f<|jd	|�
�}tt|�|��}tj||�tt|�d��}tj||�y)Nr�r$r%z19710101 20:43:42rz21460101 20:43:42rrir�r�r�)rr,rr-r�rVr.r'rrr#r()rXr�rqrp�dlr(r,s       r-�test_date_unitz"TestPandasContainer.test_date_unit�s���
���2�3�;�;�D�A��6�
�
�Z�Z�
�
��
'��"�#6�7�����2���"�#6�7�����2����������2����z�z�g��z�>���8�D�>�T�:��
���f�b�)��8�D�>�T�:��
���f�b�)r9)r�r�r�c	��ttjd|�gd|�d���}tt	tjd|�gd|�d�|��t	tjd|�gt
|��d��}t
�}|j|d|�	�|jd
�tjt|ddg�
�|dd��y)Nz2023-01-01T11:22:33.123456zdatetime64[�]rGz2022-01-01T11:22:33.123456�rHrM)r%�date_objr�r�rr%r�r�F)r�check_dtype)rrP�
datetime64r
rrorr'�seekr#r(r)rXr�rMrp�bufs     r-�test_iso_non_nano_datetimesz/TestPandasContainer.test_iso_non_nano_datetimes�s����
�]�]�7��
>�?���v�Q�'�
�����]�]�#?��F�G�'��v�Q�/���
#��]�]�#?��F�G� ���

�

���j��
�
�
�3�E�T�
�:������
	����c�&�*�)=�>��"��		
r9c�0�d}tt|��y)Nad{
        "status": "success",
        "data": {
        "posts": [
            {
            "id": 1,
            "title": "A blog post",
            "body": "Some useful content"
            },
            {
            "id": 2,
            "title": "Another blog post",
            "body": "More content"
            }
           ]
          }
        })rr)rXr�s  r-�test_weird_nested_jsonz*TestPandasContainer.test_weird_nested_json�s��

��"	�(�1�+�r9c��ttjjd�j	d�td���}t
d�|d<td�|d<d	|d
<tdd��|_	t|j��}t|tjtjd��
�}tj ||�y)Nr)r@r�ABrr�r%r@�intsT�boolsra)r�r�rG)r
rPrQrRrSrOrr5rrMrr'rrF�bool_r#r()rX�dfj2r(r,s    r-�test_doc_examplez$TestPandasContainer.test_doc_examples�����I�I�!�!�!�$�4�4�V�<�d�4�j�
��!��,��V���Q�x��V����W�
��
�A�6��
������'���4����2�8�8�'L�M��
���f�f�-r9c��|dddd�}tj|�}|j�}tt	|��}|j|j|j��}d}tjt|��5|jtjd�	�}ddd�tj||�y#1swY� xYw)
Nr'r(r[z	teams.csvrtz.The 'downcast' keyword in fillna is deprecatedrF)�downcast)rV�read_csvr'rr�reindexrMrr#r$r%�fillnarPr�r()rXr2r0rpr�r,�resr+s        r-�test_round_trip_exceptionz-TestPandasContainer.test_round_trip_exceptions�����f�f�k�:��
�[�[��
���J�J�L���8�A�;�'���n�n�2�8�8�R�Z�Z�n�@��>��
�
'�
'�
�S�
A�	5��*�*�R�V�V�e�*�4�C�	5�
���c�2�&�	5�	5�s�	"C
�
Czfield,dtype�
created_at�UTC)�tz�	closed_at�
updated_atc��d}|j|��t|jd��}||j|k(sJ�y)Nzw{"created_at": ["2023-06-23T18:21:36Z"], "closed_at": ["2023-06-23T18:21:36"], "updated_at": ["2023-06-23T18:21:36Z"]}
)�contentTr�)�
serve_contentr�urlrH)rX�fieldrH�
httpserverr[r,s      r-�test_urlzTestPandasContainer.test_url*sC��J��� � �� �.��:�>�>��>���e�}�"�"�e�+�+�+r9c	��d�}ttd�td��g�}|jdk(sJ�tt	|j��d��j
|�}tj||�ttd�td��gtdd	g��
�}|jdk(sJ�tt	|j��d��j
|�}tj||�ttd�td��g�}|djdk(sJ�tj|tt	|j���j
|��y)Nc�0�tj|d��S)Nr��r�)rV�to_timedelta)r|s r-�<lambda>z4TestPandasContainer.test_timedelta.<locals>.<lambda>;s��b�o�o�a�d�;�r9�r@��secondsztimedelta64[ns]r�r�rrrL)rrrHrrr'�applyr#r�rr
r()rX�	converterrfr,�frames     r-�test_timedeltaz"TestPandasContainer.test_timedelta:s(��;�	��i��m�Y�q�%9�:�;���y�y�-�-�-�-��8�C�K�K�M�2��A�G�G�	�R��
���v�s�+��i��m�Y�q�%9�:�%��A��-�P���y�y�-�-�-�-��8�C�K�K�M�2��A�G�G�	�R��
���v�s�+��9�R�=�)�A�*>�?�@���Q�x�~�~�!2�2�2�2�
����9�X�e�m�m�o�6�7�=�=�i�H�	
r9c�l�ttd��td��gddgtdd��d	��}t|j	d
���}t|�}t
j|jd
��|d
<t
j|j�|d<tj||�y)Nr��daysr@rrrr�)�startrb�rrrZr$r�rrrZ)
r
rrrr'rrVrr�to_datetimerZr#r()rXrr[r,s    r-�test_timedelta2z#TestPandasContainer.test_timedelta2Ns�����R�(�)�A�*>�?���V��j�!�<�
�
����
�
��
�5�6���4����o�o�f�h�h�T�:��s���n�n�V�X�X�.��s��
���e�V�,r9c��td�}td�}td||git��}tdt	j
|�j
d�j|j
d�jgi�}t|jd���}t|ddi��}tj||d�	�y)
Nrr�rrGr$r�rFFr)
rrr
rorV�	Timedeltar,�_valuerr'rr#r()rX�tdrcrr)r[r,s       r-�test_mixed_timedelta_datetimez1TestPandasContainer.test_mixed_timedelta_datetime\s���
�r�]��
�z�
"���3��R��/��8���
�2�<�<��#�+�+�D�1�8�8�"�*�*�T�:J�:Q�:Q�R�S�
����
�
��
�5�6���4��W�~�6��
���f�h��Gr9�
timedelta_typc���|d��|d��tjg}|r|jd�t||��}|dk(rd}nd}|r|j	d	d
�}|j|��}||k(sJ�y)NrrrrrLr�zA{"P1DT0H0M0S":"P1DT0H0M0S","P2DT0H0M0S":"P2DT0H0M0S","null":null}z7{"86400000":86400000,"172800000":172800000,"null":null}r�r�r�)rVr.r�rr�r')rXr�r�r&r[rfr)r,s        r-�test_timedelta_to_jsonz*TestPandasContainer.test_timedelta_to_jsonhs���
�1�%�}�!�'<�b�f�f�E����K�K����T��&���%��S�
�Q�H���'�'��[�9�H������5����!�!�!r9c��|d��g}t||��}|r|jt�}|j�}d}||k(sJ�y)N�*)�millisecondsrLz	{"42":42})rr�ror')rXr�r&r[rfr,r)s       r-�+test_timedelta_to_json_fractional_precisionz?TestPandasContainer.test_timedelta_to_json_fractional_precisionsL���2�.�/���T��&����*�*�V�$�C����������!�!�!r9c���t�}tdd|gi�}tddt|�gi�}tt	|jt����}t
j||d��y)Nr�rtFr)ror
r�rrr'r#r()rXr�rr)r,s     r-�test_default_handlerz(TestPandasContainer.test_default_handler�s_������3��E�
�+�,���c�A�s�5�z�?�3�4���8�E�M�M�#�M�$F�G�H��
���h���Gr9c	��d�}dtddtdd�gtd�ddgd	�d
dg��g}d
}t||d��|k(sJ�y)Nc�r�t|t�rdd|jfd|jfgSt	|�S)N)�mathjs�Complex�re�im)�
isinstance�complex�real�imagr�)�objs r-�defaultzBTestPandasContainer.test_default_handler_indirect.<locals>.default�s4���#�w�'�-��c�h�h�/?�$����AQ�R�R��s�8�Or9�	r�STRri���r�zN/Ar�rrrzR[9,[[1,null],["STR",null],[[["mathjs","Complex"],["re",4.0],["im",-5.0]],"N\/A"]]]r1�rur7)r
r7r�r)rXr;�df_listr)s    r-�test_default_handler_indirectz1TestPandasContainer.test_default_handler_indirect�sg��	�
���%���B��0��e��d�E�7R�S��c�
�
�
��
1�	�

����J�h�V�	
�Vr9c	��tddtdd�gtd�dtdd�gd�d	d
g��}d}|jtd
��|k(sJ�y)Nrgffffff@rir>r�g333333�?rr�rrrzE[["(1+0j)","(nan+0j)"],["(2.3+0j)","(nan+0j)"],["(4-5j)","(1.2+0j)"]]r1r?)r
r7r�r'r�)rXrpr)s   r-�,test_default_handler_numpy_unsupported_dtypez@TestPandasContainer.test_default_handler_numpy_unsupported_dtype�sa��
��c�7�1�b�>�*�%��,��g�c�ST�o�1V�W��#�J�
��

%�	�
�z�z�#�h�z�?�8�K�K�Kr9c
�x��d��fd�}tjt���5tdddt	�gi�j|��ddd�tjt���5tdddt
dd	�gi�j|��ddd�y#1swY�XxYw#1swYyxYw)
N�raisinc���t���rc)�	TypeError)r:r+s �r-�my_handler_raiseszJTestPandasContainer.test_default_handler_raises.<locals>.my_handler_raises�s
����C�.� r9rrrrrtrir>)r�r�rGr
ror'r7)rXrHr+s  @r-�test_default_handler_raisesz/TestPandasContainer.test_default_handler_raises�s������	!��]�]�9�C�
0�	��s�Q��6�8�,�-�.�6�6� 1�
7�
�	��]�]�9�C�
0�	��s�Q��7�1�b�>�2�3�4�<�<� 1�
=�
�	�	�		�	��	�	�s�)B$�0+B0�$B-�0B9c��tdgd�i�}|d|d<|j�}|djd�|d<||j�k(sJ�|d}|d}|j�|j�k(sJ�y)Nr�)rrrZrrrrrk�category)r
r'r�)rXrpr)r��scs     r-�test_categoricalz$TestPandasContainer.test_categorical�s���
��@�A�
B���S�'��3���:�:�<���S�'�.�.��,��3���2�:�:�<�'�'�'��s�G��
��W���y�y�{�b�j�j�l�*�*�*r9c�x�tddd��}|jd�jd�}t|tdd��d��}|j	�}||d<|j�}||j�k(sJ�t
|�}t
|�}|j�|j�k(sJ�y)	Nr�r��
US/Eastern�rbr�utcrarsr�)r�
tz_convert�tz_localizer
rwr'r)rX�tz_range�tz_naiverp�df_naiver)�stz�s_naives        r-�test_datetime_tzz$TestPandasContainer.test_datetime_tz�s����j�!��E���&�&�u�-�9�9�$�?��
�X�J�z�1�,M�N�
O���7�7�9�� ���
��#�#�%���2�:�:�<�'�'�'��X�����"���{�{�}���� 1�1�1�1r9c�,�ttjjd�j	d��}tj
|jdd|jd�}|j�}||j�k(sJ�ttjjd�j	d��}tj
|jdd|jd�}|j�}||j�k(sJ�y)Nr)r_ri��Sparser_)
r
rPrQrRrSr�r�r�r'r)rXrp�sdfr)r��sss      r-�test_sparsezTestPandasContainer.test_sparse�s���
�r�y�y�,�,�Q�/�?�?��H�
I���V�V����r��
��i�i��!���:�:�<���3�;�;�=�(�(�(��2�9�9�(�(��+�;�;�B�?�@���F�F����b�q�	�
�X�X�h�
���9�9�;���2�:�:�<�'�'�'r9rcz2013-01-10 05:00:00Zz2013-01-10 00:00:00rOz2013-01-10 00:00:00-0500c�p�d}t|d��|k(sJ�|j�}t|d��|k(sJ�y)Nz"2013-01-10T05:00:00.000Z"T��	iso_dates)r�
to_pydatetime�rXrc�exp�dts    r-�test_tz_is_utcz"TestPandasContainer.test_tz_is_utc�sA��+���2��.�#�5�5�5�
�
�
�
���2��.�#�5�5�5r9c��td�}d}t|d��|k(sJ�|j�}t|d��|k(sJ�y)Nz2013-01-10 05:00:00z"2013-01-10T05:00:00.000"Tra)rrrcrds    r-�test_tz_is_naivez$TestPandasContainer.test_tz_is_naive�sJ��
�,�
-��)���2��.�#�5�5�5�
�
�
�
���2��.�#�5�5�5r9rTz2013-01-01 05:00:00Zrraz2013-01-01 00:00:00rPz2013-01-01 00:00:00-0500c�>�d}d}t|d��|k(sJ�t|�}t|d��|k(sJ�t|jt�d��|k(sJ�t	d|i�}t|d��}||k(sJ�t|jdti�d��sJ�y)Nz7["2013-01-01T05:00:00.000Z","2013-01-02T05:00:00.000Z"]zF{"DT":{"0":"2013-01-01T05:00:00.000Z","1":"2013-01-02T05:00:00.000Z"}}Tra�DT)rrr�ror
)rXrTre�dfexpr3rpr,s       r-�test_tz_range_is_utcz(TestPandasContainer.test_tz_range_is_utcs���H��
/�	��8�t�4��;�;�;��H�%���3�$�/�3�6�6�6��3�:�:�f�-��>�#�E�E�E�
��c�{�
#���R�4�0��������2�9�9�d�F�^�4��E�E�Er9c��tdd��}d}d}t|d��|k(sJ�t|jt�d��|k(sJ�t	d|i�}t|d��}||k(sJ�t|jdti�d��sJ�y)	Nz2013-01-01 05:00:00rraz5["2013-01-01T05:00:00.000","2013-01-02T05:00:00.000"]zD{"DT":{"0":"2013-01-01T05:00:00.000","1":"2013-01-02T05:00:00.000"}}Trark)rrr�ror
)rXr3rerlrpr,s      r-�test_tz_range_is_naivez*TestPandasContainer.test_tz_range_is_naive"s����.��:��E��V���3�$�/�3�6�6�6��3�:�:�f�-��>�#�E�E�E�
��c�{�
#���R�4�0��������2�9�9�d�F�^�4��E�E�Er9c��ttd�d��}tddgddggddg��}tj||�y)	Nr!Trrrrrr�rrr
r#r(r}s   r-�test_read_inline_jsonlz*TestPandasContainer.test_read_inline_jsonl1sD���8�$I�J�RV�W���q�!�f�q�!�f�-��S�z�B��
���f�h�/r9c��td|j�d�d|��}tddgddggddg�	�}tj||�y)
Nzs3n://z/items.jsonlT)r �storage_optionsrrrrr)rrKr
r#r()rX�s3_public_bucket_with_data�s3sor,r)s     r-�test_read_s3_jsonlz&TestPandasContainer.test_read_s3_jsonl8sW��
��/�4�4�5�\�B�� �
��
�q�!�f�q�!�f�-��S�z�B��
���f�h�/r9c�0�tjd�5}t|dd��5}|jd�ddd�t	|d��}tdd	gdd	ggd
dg��}tj||�ddd�y#1swY�JxYw#1swYyxYw)
Nztmp_items.json�wzutf-8��encodingr!Trrrrrr)r#r��open�writerr
r()rXr0�infiler,r)s     r-�test_read_local_jsonlz)TestPandasContainer.test_read_local_jsonlEs���
�_�_�-�
.�	4�$��d�C�'�2�
D�f����B�C�
D��t�4�0�F� �1�a�&�1�a�&�!1�C��:�F�H��!�!�&�(�3�	4�	4�
D�
D��	4�	4�s"�B�B�AB�B		�B�Bc��d}t|�}t|d��}tddgddggddg�	�}tj||�td�}t|d��}tddgddggddg�	�}tj||�y)
Nu5{"a": "foo”", "b": "bar"}
{"a": "foo", "b": "bar"}
Trufoo”rArCrrr)rrr
r#r(�rXr(r,r)s    r-�test_read_jsonl_unicode_charsz1TestPandasContainer.test_read_jsonl_unicode_charsNs���
I����~���4�t�,���{�E�2�U�E�N�C�c�SV�Z�X��
���f�h�/��Q�R���4�t�,���{�E�2�U�E�N�C�c�SV�Z�X��
���f�h�/r9�bigNumc���t|tdg��}|j�}dt|�zdz}||k(sJ�t	|tdgdg��}|j�}dt|�zdz}||k(sJ�y)	N�	articleIdr��
{"articleId":r�r�rHrMr�{"0":{"articleId":r�)rror'r�r
)rXr�r�r(r)rps      r-�test_to_json_large_numbersz.TestPandasContainer.test_to_json_large_numbers_s�����f�[�M�B���~�~���"�S��[�0�3�6���x����
�v�V�K�=�1�#�
N���z�z�|��'�#�f�+�5��<���x���r9l����lc�\�tdt|�zdz�}d}tjt|��5t|�ddd�tdt|�zdz�}tjt|��5t|�ddd�y#1swY�SxYw#1swYyxYw)Nr�r�z#Value is too small|Value is too bigrr�r�)rr�r�r�r&r)rXr�r(r+s    r-�test_read_json_large_numbersz0TestPandasContainer.test_read_json_large_numbersls�����#�f�+�5��;�<��4��
�]�]�:�S�
1�	��d�O�	��,�s�6�{�:�T�A�B��
�]�]�:�S�
1�	��d�O�	�	�		�	��	�	�s�B�B"�B�"B+c��d}t|�}t|d��}tddg��}tj||�d}t|�}t|�}tddgdg�	�}tj||�y)
Nz'{"articleId": "1404366058080022500245"}r�r�gg�_SDr�rLz.{"0": {"articleId": "1404366058080022500245"}}rrt)rrrr#r�r
r(r�s    r-�test_read_json_large_numbers2z1TestPandasContainer.test_read_json_large_numbers2xss��8����~���4�X�.���+�k�]�;��
���v�x�0�?����~���4����[��
��s�K��
���f�h�/r9c���tddgddggddg��}|jdd��}d	}||k(sJ�td
dgddggddg��}|jdd��}d
}||k(sJ�tjt	t|�d��|�tddgddggddg��}|jdd��}d}||k(sJ�tjt	t|�d��|�y)Nrrrrrr0T�r7r z{"a":1,"b":2}
{"a":1,"b":2}
zfoo}rAzfoo"z/{"a":"foo}","b":"bar"}
{"a":"foo\"","b":"bar"}
rzfoo\za\r")r
r'r#r(rrrs    r-�
test_to_jsonlz!TestPandasContainer.test_to_jsonl�s��
��A���A��'�#�s��
<�����9�D��9��3����!�!�!�
����&�%��9�C��:�
N�����9�D��9��G����!�!�!�
���i���(8��E�r�J���%�(�6�5�/�:�U�C�L�
Q�����9�D��9��R����!�!�!�
���i���(8��E�r�Jr9z%GH#13774 encoding kwarg not supported�val)�E�, 17r9�a�b�c)r�r�r�r�)sEE, 17r9r�r�r�)r����r�r�r�)r9r�r�r�)r�r�r�r�)�A��r9r�r�r�r9r�r�r�rKc	�`�t|D�cgc]%}t|t�r|jd�n|��'c}|��}d}t	j
d�5}|j
||��tt|�|��}t	j||d��ddd�ycc}w#1swYyxYw)Nzlatin-1rGr�rzF)�check_categorical)
rr6re�decoder#r�r'rrr�)rXrHr�r|rfr{r0�retrs        r-�test_latin_encodingz'TestPandasContainer.test_latin_encoding�s���$�IL�M�A�J�q�%�$8�Q�X�X�i�
 �a�
?�M��
����
�_�_�[�
)�	G�T��K�K��x�K�0��X�d�^�h�?�D��"�"�3���F�	G�	G��	
N�	G�	G�s�*B�AB$�$B-c���tdtd�gi�}|jdd��j�}|j	�|jdd��j�}||k(sJ�y)NrrT)rM�deep)r
r��memory_usage�sumr')rXrp�size_before�
size_afters    r-�"test_data_frame_size_after_to_jsonz6TestPandasContainer.test_data_frame_size_after_to_json�sc��
��c�!�f�X��
'���o�o�D�t�o�<�@�@�B��
�
�
���_�_�4�d�_�;�?�?�A�
��j�(�(�(r9r�r�r�r��1.�2.c��tddgddgg||��}|jd��}tt|�d��}t	j
||�y)Nrrr�rirt�tableru�r
r'rrr#r()rXrMrr)�dfjsonr,s      r-�.test_from_json_to_json_table_index_and_columnszBTestPandasContainer.test_from_json_to_json_table_index_and_columns�sS���q�!�f�q�!�f�-�U�G�L���!�!��!�1���8�F�+�G�<��
���f�h�/r9c��tddgddgddgd��}|jd�	�}tt|�d�	�}t	j
||�y)
Nrrr�r�r�r�rr�rur�)rXr)r�r,s    r-�#test_from_json_to_json_table_dtypesz7TestPandasContainer.test_from_json_to_json_table_dtypes�sS���A�q�6��c�
�#�s��L�M���!�!��!�1���8�F�+�G�<��
���f�h�/r9zincorrect na conversion)rzr0rMrc�d�tjtgd�d��tgd�d��tgd�d��tgd�d	��tgd
�d��tgd�d
��d��}|j|��}t	t|�|dddd	dd
d���}t
j||�y)Nr�rFrG)Nr�r�rd)N�rZro�TFT�bool�rrNrK)r`Nz
2020-01-03r�)�Integer�Float�Object�Bool�Category�Datetimeru�r7rH)r
�	from_dictrr'rrr#r()rXr7r)r�r,s     r-�%test_to_json_from_json_columns_dtypesz9TestPandasContainer.test_to_json_from_json_columns_dtypes�s����&�&�!�)�7�;�� 0�	�B� ���A��2�&�A�"�#3�:�F�"�6�>N��
	
�
���!�!��!�0����V���"�"�"��&�,�
�
��	���f�h�/r9)rrZc���tddgddgddgd��}|jd�	�}d
}tjt|��5t|d|��ddd�y#1swYyxYw)
Nrrr�r�r�r�rr�ruz)cannot pass both dtype and orient='table'rr��r
r'r�r�r&r)rXrHrpr�r+s     r-�!test_read_json_table_dtype_raisesz5TestPandasContainer.test_read_json_table_dtype_raises�se���a��V�3��*�C��:�F�
G�����7��+��9��
�]�]�:�S�
1�	;��f�W�E�:�	;�	;�	;�s�A�A&)rMrr0r1c���t�}ttd�|d��}tj|j
|j
�tj|j|j�y)Nz{}Tr�)r
rrr#�assert_index_equalrMr)rXr7r)r,s    r-�%test_read_json_table_empty_axes_dtypez9TestPandasContainer.test_read_json_table_empty_axes_dtypesO���;���8�D�>�&�t�L��
���f�l�l�H�N�N�;�
���f�n�n�h�.>�.>�?r9c���tddgddggddgddg�	�}|jd
��}d}tjt|�
�5t|d
d��ddd�y#1swYyxYw)Nrrr�rir�r�r�r�rtr�ruz0cannot pass both convert_axes and orient='table'rTr�r�)rXrpr�r+s    r-�(test_read_json_table_convert_axes_raisesz<TestPandasContainer.test_read_json_table_convert_axes_raises	sm��
��A���A��'��S�z�D�$�<�
P�����7��+��@��
�]�]�:�S�
1�	A��f�W�4�@�	A�	A�	A�s�A � A)zdata, expectedrir@r)rr[rCrnr�r�rJ)rKr[)rKrMc�b�|jdd��}tj|�}||k(sJ�y)NrzF�r7rM)r'r(�loads�rXr[r)r,s    r-�test_index_false_to_json_splitz2TestPandasContainer.test_index_false_to_json_splits3��@���W�E��:�����F�#����!�!�!r9c���|jdd��}tj|�}tjjj|d��t
|�jd��d�}||k(sJ�y)Nr�Fr�rLr0ru)�schemar[)r'r(r�rVr'�build_table_schemar
�to_dict�rXr[r,r)s    r-�test_index_false_to_json_tablez2TestPandasContainer.test_index_false_to_json_table6sm��&���W�E��:�����F�#���e�e�j�j�3�3�D��3�F��d�O�+�+�9�+�=�
��
��!�!�!r9c��tddgddggddg��}d}tjt|�	�5|j	|d
��ddd�y#1swYyxYw)Nrrrir@rrrzU'index=False' is only valid when 'orient' is 'split', 'table', 'records', or 'values'rFr�r�r�s    r-�test_index_false_error_to_jsonz2TestPandasContainer.test_index_false_error_to_jsonSs`��
��A���A��'�#�s��
<��
.�	��]�]�:�S�
1�	3��J�J�f�E�J�2�	3�	3�	3���A�Ar0c��tddgddggddg��}d}tjt|�	�5|j	|d
��ddd�y#1swYyxYw)Nrrrir@rrrzS'index=True' is only valid when 'orient' is 'split', 'table', 'index', or 'columns'rTr�r�r�s    r-�test_index_true_error_to_jsonz1TestPandasContainer.test_index_true_error_to_jsonas`��
��A���A��'�#�s��
<��
-�	��]�]�:�S�
1�	2��J�J�f�D�J�1�	2�	2�	2�r�r�c��tddgddgd��}|j||��}tt|�|��}t	j
||�y)Nrrr�rir�r�rur�)rXr7rMr)r�r,s      r-�"test_index_false_from_json_to_jsonz6TestPandasContainer.test_index_false_from_json_to_jsonosQ��
�A�q�6��A��7�8���!�!��u�!�=���8�F�+�F�;��
���f�h�/r9c��ttd�dd��}tdgd��}tdg|�	�}t	j
||�y)
Nz{"2019-01-01T11:00:00.000Z":88}r�rMr�z2019-01-01 11:00:00zM8[ns, UTC]rG�XrL)rrrrr#r�)rXr,�exp_dtir)s    r-�test_read_timezone_informationz2TestPandasContainer.test_read_timezone_informationysI����6�7�X�g�
�� �!6� 7�}�M���2�$�g�.��
���v�x�0r9r
)zs3://example-fsspec/zgcs://another-fsspec/file.jsonzhttps://example-site.com/datazsome-protocol://data.txtc�|�ttd|�d���}td|gi�}tj||�y)Nz
{"url":{"0":"rrr
rq)rXr
r,r)s    r-�test_read_json_with_url_valuez1TestPandasContainer.test_read_json_with_url_value�s<���8�o�c�U�%�$@�A�B���e�c�U�^�,��
���f�h�/r9�compression)r�z.gzz.bz2z.tarc��d�d|��}tjtd|�d���5t|�ddd�y#1swYyxYw)N��aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz.jsonzFile z does not existr)r�r��FileNotFoundErrorr)rXr��long_json_paths   r-�'test_read_json_with_very_long_file_pathz;TestPandasContainer.test_read_json_with_very_long_file_path�sN��'�<�u�[�M�:��
�]�]��u�^�,<�O�%L�
�	&�

�n�%�	&�	&�	&�s	�<�Azdate_format,key)r�i\&)r��
P1DT0H0M0Sc��tdggtjd�g��}d|�d�}|j|��}||k(sJ�y)Nr�1Drr|z
":{"0":1}}r�)r
rVr"r')rXr��keyrpr)r,s      r-�test_timedelta_as_labelz+TestPandasContainer.test_timedelta_as_label�sL�����u�r�|�|�D�'9�&:�
;�����]�+�������4����!�!�!r9zorient,expected)rMz{"('a', 'b')":{"('c', 'd')":1}})rz{"('c', 'd')":{"('a', 'b')":1}}r�z,Produces JSON but not in a consistent manner)�marksc�Z�tdggdgdg��}|j|��}||k(sJ�y)Nrr�)rZrsrtrur��rXr7r)rpr,s     r-�test_tuple_labelsz%TestPandasContainer.test_tuple_labels�s8��0���u�Z�L�:�,�
G�����6��*����!�!�!r9�indent)rrric��tddgddggddg��}|j|��}d	|z}d
|�d|�|�d|�|�d
|�d|�d|�|�d|�|�d|�d�}||k(sJ�y)NrCrArBrrrr�r�� z{
z"a":{
z"0":"foo",
z
"1":"baz"
z},
z"b":{
z"0":"bar",
z
"1":"qux"
z}
}r�)rXr�rpr,�spacesr)s      r-�test_to_json_indentz'TestPandasContainer.test_to_json_indent�s����������7�#�s��
L�����6��*���v������	�������������	���	�������������	�	����!�!�!r9z]Adjust expected when infer_string is default, no bug here, just a complicated parametrization))rzz�{
    "columns":[
        "a",
        "b"
    ],
    "index":[
        0,
        1
    ],
    "data":[
        [
            "foo",
            "bar"
        ],
        [
            "baz",
            "qux"
        ]
    ]
})r0zf[
    {
        "a":"foo",
        "b":"bar"
    },
    {
        "a":"baz",
        "b":"qux"
    }
])rMzn{
    "0":{
        "a":"foo",
        "b":"bar"
    },
    "1":{
        "a":"baz",
        "b":"qux"
    }
})rzn{
    "a":{
        "0":"foo",
        "1":"baz"
    },
    "b":{
        "0":"bar",
        "1":"qux"
    }
})r1zV[
    [
        "foo",
        "bar"
    ],
    [
        "baz",
        "qux"
    ]
])r�aa{
    "schema":{
        "fields":[
            {
                "name":"index",
                "type":"integer"
            },
            {
                "name":"a",
                "type":"string"
            },
            {
                "name":"b",
                "type":"string"
            }
        ],
        "primaryKey":[
            "index"
        ],
        "pandas_version":"1.4.0"
    },
    "data":[
        {
            "index":0,
            "a":"foo",
            "b":"bar"
        },
        {
            "index":1,
            "a":"baz",
            "b":"qux"
        }
    ]
}c�b�tddgddggddg��}|j|d�	�}||k(sJ�y)
NrCrArBrrrrri)r7r�r�r�s     r-�test_json_indent_all_orientsz0TestPandasContainer.test_json_indent_all_orients�sB��x�������7�#�s��
L�����6�!��4����!�!�!r9c��tjtd��5t�j	d��ddd�y#1swYyxYw)Nzmust be a nonnegative integerr���r�)r�r�r&r
r'rjs r-� test_json_negative_indent_raisesz4TestPandasContainer.test_json_negative_indent_raisesYs9��
�]�]�:�-L�
M�	+��K���r��*�	+�	+�	+�s�A�A	c	��td�}t|�}tdddtjdtjdg�}tj||�y)Nz?["a", NaN, "NaN", Infinity, "Infinity", -Infinity, "-Infinity"]r�NaN�Infinityz	-Infinity)rrr
rPr�r#r(r�s    r-�test_emca_262_nan_inf_supportz1TestPandasContainer.test_emca_262_nan_inf_support]sR���M�
���4����
�$��r�v�v�z�B�F�F�7�K�H�
��	���f�h�/r9c��tjddiddig�}tdddgi�}tt	|��}tj||�y)N�col�31900441201190696999�Text)r(�dumpsr
rrr#r()rX�encoded_jsonr)r,s    r-�test_frame_int_overflowz+TestPandasContainer.test_frame_int_overflowhsS���z�z�E�+A�#B�U�F�O�"T�U���e�&<�f�%E�F�G���8�L�1�2��
���f�h�/r9zdataframe,expectedr�r|r}zU{"(0, 'x')":1,"(0, 'y')":"a","(1, 'x')":2,"(1, 'y')":"b","(2, 'x')":3,"(2, 'y')":"c"}c�Z�|jd��}|jd��}||k(sJ�y)NT��future_stackrMru)�stackr')rX�	dataframer)r�r,s     r-�test_json_multiindexz(TestPandasContainer.test_json_multiindexos2�����d��3�����w��/����!�!�!r9c��|jd}}tgd�gd�d��}|jd|�d|��|��d}	|d	�|jj	�D�vrytjd
�|d
z}|dkDsJd���K)
Nr�r�)rrir�rzs3://�/)rtr@c3�4K�|]}|j���y�wrc)r�)�.0r:s  r-�	<genexpr>z1TestPandasContainer.test_to_s3.<locals>.<genexpr>�s����Q�3�s�w�w�Q�s�rrz,Timed out waiting for file to appear on moto)rKr
r'�objects�all�time�sleep)rX�s3_public_bucketrv�mock_bucket_name�target_filerp�timeouts       r-�
test_to_s3zTestPandasContainer.test_to_s3~s���)9�(=�(=�{�+��
�Y�Y�7�
8��
�
�
�U�+�,�A�k�]�;�T�
�R�����Q�2B�2J�2J�2N�2N�2P�Q�Q���J�J�s�O��s�N�G��Q�;�N� N�N�;�r9c���t|t�r1tjj	d��}|j|�t
|gg�j�}|dk(sJ�y)Nznot implementedr�z{"0":{"0":null}})r6rr�r�r�r�r
r')rX�
nulls_fixturer�r�r,s     r-�test_json_pandas_nullsz*TestPandasContainer.test_json_pandas_nulls�sY���m�W�-��;�;�$�$�,=�$�>�D�����%��]�O�,�-�5�5�7���+�+�+�+r9c�v�ttd�d��}tgd��}tj||�y)Nz[true, true, false]r�r�)TTF)rrrr#r�r}s   r-�test_readjson_bool_seriesz-TestPandasContainer.test_readjson_bool_series�s/���8�$9�:��I���-�.��
���v�x�0r9c��tdtdd�ddg��jd��}|j�}d}||k(sJ�y)	NTz
2017-01-20z
2017-01-23rCrArtra�{"(Timestamp('2017-01-20 00:00:00'), 'foo')":true,"(Timestamp('2017-01-20 00:00:00'), 'bar')":true,"(Timestamp('2017-01-21 00:00:00'), 'foo')":true,"(Timestamp('2017-01-21 00:00:00'), 'bar')":true,"(Timestamp('2017-01-22 00:00:00'), 'foo')":true,"(Timestamp('2017-01-22 00:00:00'), 'bar')":true,"(Timestamp('2017-01-23 00:00:00'), 'foo')":true,"(Timestamp('2017-01-23 00:00:00'), 'bar')":true})r
rrr'rs    r-�test_to_json_multiindex_escapez2TestPandasContainer.test_to_json_multiindex_escape�sY��
���\�<�8��E�N�
��%�T�%�
"�		�
�����
B�	���!�!�!r9c��Gd�d�}t|dddd��g�}tj|j��ddddd	�ik(sJ�y)
Nc��eZdZdd�Zd�Zy)�GTestPandasContainer.test_to_json_series_of_objects.<locals>._TestObjectNc�<�||_||_||_||_yrc�rr�_crs)rXrrr!rss     r-rhzPTestPandasContainer.test_to_json_series_of_objects.<locals>._TestObject.__init__�s�������������r9c��y)Nr@r�rjs r-r�zITestPandasContainer.test_to_json_series_of_objects.<locals>._TestObject.e�s��r9rl)rmrnrorhr�r�r9r-�_TestObjectr�s��
�
r9r#rrr�rir �0)rrrs)rr(r�r')rXr#r�s   r-�test_to_json_series_of_objectsz2TestPandasContainer.test_to_json_series_of_objects�sP��	�	���q�A�!�q�9�:�;���z�z�&�.�.�*�+��1�1�1�5M�/N�N�N�Nr9z
data,expectedy� @y�?y"@�)rrrzW{"0":{"imag":8.0,"real":-6.0},"1":{"imag":1.0,"real":0.0},"2":{"imag":-5.0,"real":9.0}}yH�z��"���Q��?y������@�p=
ף"@y��Q�@�(\��ſz]{"0":{"imag":0.66,"real":-9.39},"1":{"imag":9.32,"real":3.95},"2":{"imag":-0.17,"real":4.03}}y�@y�y@�y$�z�{"0":{"0":{"imag":3.0,"real":-2.0},"1":{"imag":-3.0,"real":4.0}},"1":{"0":{"imag":0.0,"real":-1.0},"1":{"imag":-10.0,"real":0.0}}}y�Q���ѿ�(\���?yH�z�G�(\��ؿy=
ףp=�?�(\��տy�(\��迚�������z�{"0":{"0":{"imag":0.34,"real":-0.28},"1":{"imag":-0.34,"real":0.41}},"1":{"0":{"imag":-0.39,"real":-1.08},"1":{"imag":-1.35,"real":-0.78}}}c�2�|j�}||k(sJ�yrcr�r�s    r-�test_complex_data_tojsonz,TestPandasContainer.test_complex_data_tojson�s��F�������!�!�!r9c�Z�d}tdddgi��}|jd��}||k(sJ�y)NzY{"columns":["col1"],"index":[0,1],"data":[[13342205958987758245],[12388075603347835679]]}�col1l�:!c�&HIlv8�$Z_
)r[rzrur�)rXr)rpr,s    r-�test_json_uint64z$TestPandasContainer.test_json_uint64�sC��
F�	��V�&:�<P�%Q�R�
S�����7��+����!�!�!r9)rzr0r1rMrc�$�tjd�}ttdtj
dgd��tgd�d��tdtj
dgd	��tgd
�d	��gd�gd�gd
�gd�d��}|r9t
|jgd
���}t
|jgd���}n�|dk(rftt	jgd
�tj���}tt	jddtgtj���}n�|dk(rNtjd�}ddlm}	|	|jgd
���}|	|jgd���}n8t|jgd
���}t|jgd���}|j|��}
tj d|�5t#t%|
�||��}ddd�ttdtj
dgd��tgd�d��tdtj
dgd	��tgd
�d	��tddtgd��tgd�d��||d��}|dk(rDddlm}	t|j&D�
cic]}
|
|	|j||
d�����!c}
�}|dk(rt)t+d��|_t-j.|�y#1swY��
xYwcc}
w)N�pyarrowrr��Int64rGr�r�r��Float64)r�r�r�)TFNr�rr�)rrrZrsr�r��gr=�pythonrrr��ArrowExtensionArrayru�mode.string_storage)�
dtype_backendr7TF�boolean��from_pandasr1r[)r��importorskipr
rrPr�r�arrayr�object_r	�
pandas.arraysr2rr'rV�option_contextrrrrOr5r#r()rX�string_storager4r7r��parp�string_array�string_array_nar2�outr,r)r�s              r-�test_read_json_dtype_backendz0TestPandasContainer.test_read_json_dtype_backend�s~���
 �
 ��
+��
��Q�����N�'�:��I�W�5��S�"�&�&�#�.�i�@��O�9�=�(�(�$�%�	
�
���9�"�(�(�?�:S�T�L�<�R�X�X�FV�=W�X�O�
�x�
'�&�r�x�x��r�z�z�'R�S�L�)�"�(�(�C��b�>����*T�U�O�
�i�
'��$�$�Y�/�B�9�.�r�x�x��/H�I�L�1�"�(�(�;K�2L�M�O�,�B�H�H�_�,E�F�L�.�r�x�x�8H�/I�J�O��j�j��j�'��
�
�
�4�n�
E�	����
�]�6��F�	�
��Q�����N�'�:��I�W�5��S�"�&�&�#�.�i�@��O�9�=��T�5�"�-�Y�?��/�y�A�!�$�	
�
���I�%�9� � (�/�/����,�R�X�X�h�s�m�QU�X�-V�W�W���H��X��#�E�!�H�~�H��
���f�h�/�?	�	��,s�L� $L
�L
)rzr0rMc���tjd�}tdtjdgd��}|j|��}t
jd|�5tt|�||d�	�}ddd�tdtjdgd��}|dk(r(d
dl
m}	t|	|j|d�
���}tj|�y#1swY�kxYw)Nr,rr�r-rGrur3r�)r4r7r�rr1Tr6)r�r8rrPr�r'rVr<rrr;r2r9r#r�)
rXr=r4r7r>rfrAr,r)r2s
          r-�test_read_json_nullable_seriesz2TestPandasContainer.test_read_json_nullable_series7s����
 �
 ��
+���a�����^�7�3���k�k��k�(��
�
�
�4�n�
E�	����
�]�6�x��F�	�
�1�b�f�f�a�.��8���I�%�9��1�"�(�(�8�QU�(�2V�W�X�H�
���v�x�0�	�	�s�C�C(c��d}tjt|��5tdd��ddd�y#1swYyxYw)NzPdtype_backend numpy is invalid, only 'numpy_nullable' and 'pyarrow' are allowed.rr
�numpy)r4)r�r�r&r)rXr+s  r-�test_invalid_dtype_backendz.TestPandasContainer.test_invalid_dtype_backendLs;��
%�	��]�]�:�S�
1�	5��f�G�4�	5�	5�	5�s�5�>)�rmrnror��fixturer]rgrqryr��parametrizer~r�rr�r�r�r�r�rPrFr�rd�intr�r�r�r�r�r��AssertionErrorr�r1r�r�r�r�r��skipifrr�r�rrrr!r:r]rzr~r�r�r�r�r�r�r�r�r�r�rr�r�r�r�r�r�r�r�r%r�r�r�r�r�r�r�r�r�r�r�network�
single_cpurV�DatetimeTZDtyper
rr r%r"rr(r,r/rArCrIrMrYr_rgrirrmrorrr$�skip_if_not_us_localerwrr��sys�maxsizer�r�r�r�rGr�ror�r�r�r�rr�r�r�r�r
�rename_axisr�r�r�r�r�r�r�r�r��paramr�r�r�r�r�r�rrrrrr%r'r*rBrDrGr�r9r-r;r;`s����^�^�I��I��^�^�	��	��^�^�	��	�
>��[�[���X�'E�F�>�G�>��[�[���X���';�<�&�=�&��[�[���X���':�;��[�[�����3�Z�#�s��$��3�Z�#�s��$���X��3�x� ��
�#�S�
)�I�j�,A�3�+G�H�		
��0��<�0�(�[�[���X�'F�G�&�H�&�N��[�[���W�u�e�n�5��[�[���^�d�E�]�;�>�<�6�>��[�[���W�u�b�h�h�&7�8��[�[���^�d�E�]�;�>�<�9�>��[�[���W�t�R�Z�Z��d�&C�D��[�[���^�d�E�]�;�>�<�E�>�<�[�[���^�d�E�]�;�>�<�>�*�[�[���^�d�E�]�;�0�<�0��[�[���^�d�E�]�;�>�<�>� �[�[���^�d�E�]�;�>�<�>�&�[�[���J�����[�[�����f�
��u�~�.��f�
��u�~�.��f�
��u�~�.�	
��*��	�*��[�[����D�;����V���
�

�
�
�/	
�!�D5�E!�D5��[�[���W�t�U�m�4��[�[���^�d�E�]�;�+�<�5�+�(�[�[���W�t�U�m�4�0�5�0��[�[���U�R�V�V�b�f�f�W�$5�6��[�[���W�t�U�m�4�+�5�7�+��[�[���D��)O��P��[�[���&�	
�
�B�
�Q�B�
)�B�"�

�+�<M�<`
�D$
�L"�7�$P�
1��[�[���W�u�d�m�4�
1�5�
1�	1�
1��[�[���W�r�z�z�3�&7�8�	1�9�	1�(�B�
1��[�[����
�6�<�.�0@�A�B�
�F�L�>�*�+�	
��1��1�*�
*�
*� �
#�+�0�[�[���]�W�e�,<�=��[�[���[�4��-�8��[�[���Z�(�-�-��9J�9J�I�)V�W�"�X�9�>�"�(�[�[����	
��	0��	0��[�[����	
�	�
0�	�
0�;��[�[����	
�	�1�	�1�;��[�[���V�%<�=�*�>�*�$�[�[���V�%6�7�$
�8�$
�L�*.�'��[�[����[�[����[�[����
�-�2�-�-��7�8�
�*�+�
�-�2�-�-��7�8�	
��,����,�
�(-�
H��[�[���[�4��-�8��[�[���]�U�G�,<�=��[�[���_�r�|�|�Y�.G�H�"�I�>�9�"�(�[�[���[�4��-�8��[�[���_�r�|�|�Y�.G�H�"�I�9�"�H�
�*L�
�+�2� (� �[�[�����,�-��+��=��0�1�	
��6��6�6��[�[�����-�q�9��,�a�L�I��1�1�=�	
��F��F�&
F�0��[�[������	0���	0�4�0�"�[�[���X����a��3�;�;��?�9K�'L�M�
 �N�
 ��[�[���X��e�'<�=�	�>�	�0�K�,�[�[���E�i��X��[�[���
�1�,�.�9�#�+�1�
�V�V�S�$��%�
�2�6�6�3��d�3�
	
�
��[�[���W�z�6�&:�;�
G�<�
�Y� 
G�)��[�[����$��A���c�
�S�#�J��c�
�T�4�L�Q���[�[���Y�#�s��c�3�Z�$���(N�O�0�P��0�0��[�[���1�3�<U��V��[�[���X�'O�P�0�Q�W�0�<�[�[���W�t�3�S�-A�&B�C�;�D�;��[�[���X�'P�Q�@�R�@�A��[�[�����A�q�6�A�q�6�*�S�#�J�?� �#�J�!�Q��!�Q��0@�A�
�
�A�q�6�A�q�6�*�S�#�J�?�K�K�E�R� �#�J�!�Q��!�Q��0@�A�
�
���V�a��V�$�s�C�j�#�s��c�SV�Z�@X��!�#�J�!�Q��!�Q��0@�A�	
��I�C�
(�3�	�*J�K��y�s�+�7�7��>��i�0�
�
��1�v�C��c�
�S�#�J�/G�H��q�!�f�-�
�)	
��8"�9�8"��[�[����
��A���A��'�#�s��
<�
��A���A��'�#�s��
<�
H�
H��
O����V�a��V�$�s�C�j�#�s��c�SV�Z�@X���I�C�
(�
�I�C�
(�
4�
4�U�
;�
�Q��F��c�3�Z�#�s��,D�
E�	
��"��"��[�[���X���';�<�3�=�3��[�[���X�	�8�'<�=�2�>�2��[�[���X���'9�:��[�[���W�t�U�m�4�0�5�;�0�1��[�[���
�	
��0��0��[�[����#��&�	�&��[�[����/�1F�G��"��"��[�[����<�>��F�L�L����k�k�'�'�I�(��
�
�F�L�L����k�k�'�'�I�(��
�	
��,"�-�,"��[�[���X�y�1�"�2�"�&�[�[���"�$�-���
�[�[����q	
�t�j"�kt��t"�+�	0�0��[�[�����	��@�A�D�
�	
�	�"�	�"�
�[�[���O��O�,�1�"�(
O��[�[�����7�v�&�9�:�0�
��=�\�l�K�L�2�
��G�W�-���/A�B�C�2�
��#�]�3�l�M�5R�S��4�	
�)	
� �B"�C �B"�
"��[�[����D��D0��D0�L�[�[���X�'D�E�1�F�1�(5r9r;c���ttd��}|j�}tjt
d��5t
|d��ddd�y#1swYyxYw)NrzThe engine type foorrC)�engine�rr5r'r�r�r&r�rfrAs  r-�test_invalid_enginerYUsI��
��q��
�C�

�+�+�-�C�	���z�)>�	?�%��#�e�$�%�%�%�s�A�A c���ttd��}|j�}tjt
d��5t
|dd��ddd�y#1swYyxYw)Nrz&currently pyarrow engine only supportsrr,F)rVr rWrXs  r-�test_pyarrow_engine_lines_falser[]sK��
��q��
�C�

�+�+�-�C�	���z�)Q�	R�6��#�i�u�5�6�6�6�s�A�A!c	��tjd�tddgddggddgdd	g�
�}|j�}t	j
dd�5t
t|��}ddd�tddgddggd
tddgd
��tdd	gd
����}tj|�y#1swY�OxYw)Nr,rrrZrszrow 1zrow 2zcol 1zcol 2rtzfuture.infer_stringTr�rGr�)r�r8r
r'rVr<rrrr#r()r7rprAr,r)s     r-�$test_json_roundtrip_string_inferencer]es���
���	�"�	�

�s��c�3�Z� ��'�(:�W�g�DV�
�B�
�*�*�,�C�	�	�	�0�$�	7�*��8�C�=�)��*��

�s��c�3�Z� �%��W�g�&�.E�F��w��(�0G�H�	�H����&�(�+�*�*�s�B7�7Cc��tdgd�i�}d}tjt|��5t	�}|j|d�ddd�y#1swYyxYw)Nrr�zuStarting with pandas version 3.0 all arguments of to_json except for the argument 'path_or_buf' will be keyword-only.rrz)r
r#r$r%rr')rpr+r�s   r-�test_json_pos_args_deprecationr_vsW��	�C��#�	$�B�	8��
�	#�	#�M��	=�!��i��
�
�
�3�� �!�!�!�s�A�Ar,c��ttdtgd��tdtgd��d��}|jdd�	�}d
}||k(sJ�y)Nrzint64[pyarrow]rGrr-r�r0Tr�z"{"a":1,"b":2}
{"a":null,"b":null}
)r
rr	r')rpr,r)s   r-�test_to_json_ea_nullra�s[��
���B��'7�8���B��w�/�	
�
�B��Z�Z�y��Z�
5�F��H��X���r9c��d}tt|�d��j}td�}t	j
||d��y)Nz#
{"a": 1, "b": 2}
{"a": 3, "b": 4}
Trr)�exact)rrrMr
r#r�)r[r,r)s   r-�test_read_json_lines_rangeindexrd�s<���D��x��~�T�
2�
8�
8�F��!�}�H����&�(�$�7r9)5r�r�decimalrr'rrr(r/rQrrFrPr��pandas._configr�
pandas.compatr�pandas.util._test_decorators�util�_test_decoratorsr$�pandasrVr	r
rrr
rrrr�pandas._testing�_testingr#�pandas.core.arraysrr�pandas.core.arrays.string_arrowr�pandas.io.jsonrr.r8r;rYr[r]r_�
skip_if_norardr�r9r-�<module>rrs��������	�
���
�5��)�)��
�
�
���K�&�*0�Z,�r5�r5�j?%�6�,�"	!�����y�����8r9

Youez - 2016 - github.com/yon3zu
LinuXploit