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/internals/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python312/Lib/site-packages/pandas/tests/internals/__pycache__/test_internals.cpython-312.pyc
�

0	�g����L�ddlmZmZddlZddlZddlZddlZddlmZddl	m
Z
ddlmcm
ZddlmZddlZddlmZmZmZmZmZmZmZmZmZddlmZddlm cm!Z"ddl#m$Z$m%Z%m&Z&ddl'm(Z(m)Z)m*Z*dd	l+m,Z,m-Z-m.Z.ej^Z0ejbe.e*g�
�d��Z2ejbd��Z3d
�Z4d�Z5dZ6dde.fd�Z7d$d�Z8d$d�Z9ejbd��Z:Gd�d�Z;Gd�d�Z<d�Z=Gd�d�Z>Gd�d�Z?Gd�d�Z@Gd�d �ZAd!�ZBd"�ZCd#�ZDy)%�)�date�datetimeN)�BlockPlacement)�IS64)�	is_scalar)	�Categorical�	DataFrame�
DatetimeIndex�Index�
IntervalIndex�Series�	Timedelta�	Timestamp�period_range)�
DatetimeArray�SparseArray�TimedeltaArray)�BlockManager�SingleBlockManager�
make_block)�ensure_block_shape�maybe_coerce_values�	new_block��paramsc��|jS)zS
    Fixture to test both the internal new_block and pseudo-public make_block.
    ��param)�requests �GC:\Python312\Lib\site-packages\pandas/tests/internals/test_internals.py�block_makerr!4s��
�=�=��c��td�S)Nz�a: f8; b: object; c: f8; d: object; e: f8;f: bool; g: i8; h: complex; i: datetime-1; j: datetime-2;k: M8[ns, US/Eastern]; l: M8[ns, CET];)�
create_mgr�r"r �mgrr&<s���	1��r"c�z�tj|j|j�|j|jk(sJ�t	|j
t�sJ�t	|j
t�sJ�tj|j
j|j
j�y�N)�tm�assert_numpy_array_equal�values�dtype�
isinstance�mgr_locsr�as_array)�left�rights  r �assert_block_equalr2Es|��������U�\�\�:��:�:����$�$�$��d�m�m�^�4�4�4��e�n�n�n�5�5�5�����
�
� 6� 6����8O�8O�Pr"c	���tj|d�}tjjj	|||j
fdt
|�dz
zz��j�S)Nr)r�)�x�shape�strides)�np�arange�lib�
stride_tricks�
as_strided�itemsize�len�copy)r6�arrs  r �get_numeric_matrAMs\��
�)�)�E�!�H�
�C�
�6�6���*�*�

�U�S�\�\�O�d�c�%�j�1�n�6M�$M�+��
�d�f�
r"�
c��t|�}t|�}|�tf}|f|z}t|�}|dvr|j	|�|z}�n|dvrd|j	|�|zz}�n�|dvr;tj|j�|zD�	cgc]}	d|	d����
c}	|�}�n�|dvr'tj|t
j�	�}�n�|d
vr|dzj	d�}�nm|jd
�r�tjd|�}
|
�
Jd|����|
j�d}|dk(sJd��ttjt�dz|��j }t#|t|���}n�|dvr|dzj	d�}n�|dvrt%gd��}n�|dvrt%gd��}n�|dvr�|ddk7rt&�t)d�|ddD��sJ�|j+d �rt
j,}nd!}t/||dd"d#|d$d%|d&g
|�'�}|j0j3�}
|
|dz
z
}
nt5d(|�d)���t7|�}|||t|��*�Scc}	w)+a�
    Supported typestr:

        * float, f8, f4, f2
        * int, i8, i4, i2, i1
        * uint, u8, u4, u2, u1
        * complex, c16, c8
        * bool
        * object, string, O
        * datetime, dt, M8[ns], M8[ns, tz]
        * timedelta, td, m8[ns]
        * sparse (SparseArray with fill_value=0.0)
        * sparse_na (SparseArray with fill_value=np.nan)
        * category, category2

    N)�float�f8�f4�f2�int�i8�i4�i2�i1�uint�u8�u4�u2�u1)�complex�c16�c8y�?)�object�string�O�A�d)�b�bool�r,)r�dt�M8[ns]ge��Ar^zM8[nszM8\[ns,\s*(\w+\/?\w*)\]zincompatible typestr -> rr4z)must have only 1 num items for a tz-awareiʚ;)�tz��ndim)�	timedelta�td�m8[ns]rd)�category)
r4r4�rf�rgrgrg�rh)�	category2)
�arjrjrjrZrZ�crkrkrY)�sparse�	sparse_na���rBc3�&K�|]	}|dk(���y�w)r4Nr%)�.0�ss  r �	<genexpr>zcreate_block.<locals>.<genexpr>�s����.�a�1��6�.�s��_na�rfrgrh����
fill_valuezUnsupported typestr: "�"��	placementra)rr>�NrA�astyper8�reshape�ravel�ones�bool_�
startswith�re�search�groupsr
r9�_datarr�NotImplementedError�all�endswith�nanr�	sp_values�view�
ValueErrorr)�typestrr{�
item_shape�
num_offset�maker�	num_itemsr6�matr+�i�mr_rxr@s              r �create_blockr�Ws���"�y�)�I��I��I����T�
�
�L�:�%�E�
�%�
 �C���� ���G�$�z�1��	�,�	,�����G�,�z�9�:��	�-�	-�����	�	��j�0H�I�1�q��1��Y�I�5�Q��	�M�	!�����b�h�h�/��	�0�	0���)�#�#�H�-��	�	�	�G�	$��I�I�0�'�:���}�B� 8��	�B�B�}�
�X�X�Z��]���A�~�J�J�J�~��r�y�y��|�e�3��;�A�A��#�F��U��<��	�1�	1���'�!�!�(�+��	�M�	!��;�<��	�N�	"��O�P��	�+�	+���9��?�%�%��.�5��"�:�.�.�.�.����E�"����J��J��
��Q��1�j�!�Q�
�A�N�!�
�����#�#�%���z�A�~����1�'��!�<�=�=�
 ��
(�F���9�3�u�:�>�>��OJs�
I8c	��|�t}tt|td|�d��t	tj|���S)Nrr%)r{r�)r|rr��slicerr8r9)r��num_rowss  r �create_single_mgrr��s>��������W��a��(:�r�J�
�b�i�i��!�"��r"c�t�|�tf}d}g}i}|jd�D]�}|j�}t|�s�|j	d�ddd�\}}|j�}|j�jd�}|j|�t
tjt|��|z�}	||j|�|t|�z
}��t|�}g}	d}
|j�D]E\}}|jd�d}|	jt||||
���|
t|�z
}
�Gt|	d	��
�}tt!|�|g|D�
cgc] }
ttj|
����"c}
z�S#t$r|||<Y��wxYwcc}
w)aU
    Construct BlockManager from string description.

    String description syntax looks similar to np.matrix initializer.  It looks
    like this::

        a,b,c: f8; d,e,f: i8

    Rules are rather simple:

    * see list of supported datatypes in `create_block` method
    * components are semicolon-separated
    * each component is `NAME,NAME,NAME: DTYPE_ID`
    * whitespace around colons & semicolons are removed
    * components with same DTYPE_ID are combined into single block
    * to force multiple blocks with same dtype, use '-SUFFIX'::

        'a:f8-1; b:f8-2; c:f8-foobar'

    Nr�;�:rf�,�-)r�r�c� �|jdS�Nr)r.)rZs r �<lambda>zcreate_mgr.<locals>.<lambda>�s��1�:�:�a�=�r")�key)r|�split�stripr>�	partition�extend�listr8r9�KeyErrorr�items�appendr��sortedr�tuple)�descrr��offset�	mgr_items�block_placementsrY�names�blockstrr{�blocksr�r��sblocks�ns              r r$r$�s���*���T�
�
�F��I���
�[�[��
���
�G�G�I���1�v���+�+�c�*�3�Q�3�/���x��>�>�#�����
�#�#�C�(�����������3�u�:�.��7�8�	�	3��X�&�-�-�i�8�	�#�e�*���� �i� �I�
�F��J�/�5�5�7�%���)��.�.��%�a�(���
�
����z�j�
�	
�
	�c�)�n�$�
�%��V�!8�9�G��
�g��	��J�?�q�u�R�Y�Y�q�\�*�?�?����%�	3�)2��X�&�	3��(@s�F!�3%F5�!F2�1F2c��tdgd��S)NrD�rrfrh)r�r%r"r �fblockr��s�����+�+r"c��eZdZd�Zej
j
ddgd�gddggddd	ggd
dggg�d��Zd
�Zd�Z	d�Z
d�Zd�Zd�Z
y)�	TestBlockc�\�tddg�}|jtjk(sJ�y)NrJr)r�r,r8�int32)�self�
int32blocks  r �test_constructorzTestBlock.test_constructor�s(��!�$���,�
����2�8�8�+�+�+r"z	typ, datarDr�rR�rUr4rgr[ruc�Z�t||�}ttj|�|�yr()r�r2r)�round_trip_pickle)r��typ�data�blks    r �test_picklezTestBlock.test_pickles%���3��%���2�/�/��4�c�:r"c���t|jt�sJ�tj|jj
t
jgd�tj���y)Nr�r\)	r-r.rr)r*r/r8�array�intp�r�r�s  r �
test_mgr_locszTestBlock.test_mgr_locssB���&�/�/�>�:�:�:�
�#�#��O�O�$�$�b�h�h�y����&H�	
r"c���|j|jjk(sJ�|j|jjk(sJ�t|�t|j�k(sJ�yr()r6r+r,r>r�s  r �
test_attrszTestBlock.test_attrssU���|�|�v�}�}�2�2�2�2�2��|�|�v�}�}�2�2�2�2�2��6�{�c�&�-�-�0�0�0�0r"c�H�|j�}||usJ�t||�yr()r?r2)r�r��cops   r �	test_copyzTestBlock.test_copys%���k�k�m���&� � � ��6�3�'r"c��|j�}|j}|jd�d}|j|usJ�||usJ�tj|jj
t
jddgtj���|jddk(j�rJ�|jddk(j�sJ�|j�}|j}|jd�}t|�dk(sJ�|j|usJ�tj|djj
t
jdgtj���tj|djj
t
jdgtj���|jddk(j�rJ�|djddk(j�sJ�|j�}|jd�}t|�dk(sJ�tj|djj
t
jddgtj���|djddk(j�sJ�|j�}tjtd��5|jd�ddd�y#1swYyxYw)Nrrfrhr\r4��matchrg)r?r.�deleter)r*r/r8r�r�r+r�r>�pytest�raises�
IndexError)r�r��newb�locs�nbs     r �test_deletezTestBlock.test_delete s]���{�{�}���}�}��
�[�[��^�A�
���}�}��$�$�$���~��~�
�#�#��K�K� � �"�(�(�A�q�6����"A�	
��K�K��N�a�'�,�,�.�.�.��	�	�!���!�&�&�(�(�(��{�{�}���}�}��
�[�[��^���2�w�!�|��|��}�}��$�$�$�
�#�#��q�E�N�N�#�#�R�X�X�q�c����%A�	
�	�#�#��q�E�N�N�#�#�R�X�X�q�c����%A�	
��K�K��N�a�'�,�,�.�.�.��1����Q��1�$�)�)�+�+�+��{�{�}��
�[�[��^���2�w�!�|��|�
�#�#��q�E�N�N�#�#�R�X�X�q�!�f�B�G�G�%D�	
��1����Q��1�$�)�)�+�+�+��{�{�}��
�]�]�:�T�
2�	��K�K��N�	�	�	�s�#K>�>Lc��tjdd��jdd�jd�}t	|�}|j
jd}t|jt�sJ�|jd�}t|�d	k(sJ�t|djt�sJ�t|djt�sJ�t	|jd
��}|j
jd}t|jt�sJ�|jddg�}t|�d	k(sJ�t|djt�sJ�t|djt�sJ�y)N�rIr\rurhrdrr4rfr^rg)
r8r9r~r�r	�_mgrr�r-r+rr�r>r)r�r@�dfr�r�s     r �test_delete_datetimelikez"TestBlock.test_delete_datetimelikeJs1���i�i��$�'�/�/��1�5�:�:�8�D��
�s�^���g�g�n�n�Q����#�*�*�n�5�5�5�
�Z�Z��]���2�w�!�|��|��"�Q�%�,�,��7�7�7��"�Q�%�,�,��7�7�7�
�s�x�x��)�
*���g�g�n�n�Q����#�*�*�m�4�4�4�
�Z�Z��A��
���2�w�!�|��|��"�Q�%�,�,�
�6�6�6��"�Q�%�,�,�
�6�6�6r"c��tjjd�jd�}t	|tgd��d��}|j
�}d|dd|jdk(j�sJ�t|�dk(sJ�t	|dgtdg�d��t	|dgtdg�d��t	|dgtd	g�d��g}t||�D]\}}t||��y)
Nrf)rgrh)rgr4rvrzi���rgrr4rv)r8�random�default_rng�standard_normalrr�_splitr+r�r>�zipr2)r�r+r��result�expected�res�exps       r �
test_splitzTestBlock.test_split_s������&�&�q�)�9�9�&�A����.��*C�!�L���������q�	��
�
�e�#�(�(�*�*�*��6�{�a�����f�a�S�k�^�Q�C�-@�q�I��f�a�S�k�^�Q�C�-@�q�I��f�a�S�k�^�Q�C�-@�q�I�
��
�F�H�-�	)�H�C���s�C�(�	)r"N)�__name__�
__module__�__qualname__r�r��mark�parametrizer�r�r�r�r�r�r�r%r"r r�r��sx��,��[�[����
�i� �
����
��1�v��
�a�S�M�		
��;��;�
�1�
(�
(�T7�*)r"r�c�R�eZdZd�Zd�Zd�Zejjdddg�d��Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zejjddej$fdej&fg�d��Zejjddej*fdej,fdej.fg�d��Zd�Zd�Zejjdgd��d��Zd�Zd�Zejjdgd��d��Zd �Zd!�Z d"�Z!d#�Z"d$�Z#ejjdd%d&g�d'��Z$ejjdgd(��d)��Z%d*�Z&ejjd+d,d-gd.�d/g�d0��Z'd1�Z(d2�Z)y3)4�TestBlockManagerc�\�td�}|jdk(sJ�t|�dk(sJ�y)Nza,b,c: f8-1; d,e,f: f8-2rfrv)r$�nblocksr>�r�r&s  r r�zTestBlockManager.test_attrsts/���3�4���{�{�a�����3�x�1�}��}r"c�X�td�}|j|j}}tt	j
dg��|d_tt	j
dg��|d_d}tjt|��5t||�}|j�ddd�tt	j
dg��|d_tt	j
dg��|d_t||�}|jd�y#1swY�uxYw)Nz
a:bool; a: f8rr4zGaps in blk ref_locsr�)
r$�axesr�rr8r�r.r�r��AssertionErrorr�_rebuild_blknos_and_blklocs�iget)r��tmp_mgrr�r��msgr&s      r �test_duplicate_ref_loc_failurez/TestBlockManager.test_duplicate_ref_loc_failureys����_�-���|�|�W�^�^�f��+�B�H�H�a�S�M�:��q�	��+�B�H�H�a�S�M�:��q�	��%��
�]�]�>��
5�	.��v�t�,�C��+�+�-�	.�,�B�H�H�a�S�M�:��q�	��+�B�H�H�a�S�M�:��q�	���6�4�(�������	.�	.�s�D � D)c�F�tj|�}tjtj||j
��tj||j
���t
|d�sJ�t
|d�sJ�|jrJ�|jrJ�y)N�r��_is_consolidated�_known_consolidated)	r)r��assert_frame_equalr	�	_from_mgrr��hasattrrr)r�r&�mgr2s   r r�zTestBlockManager.test_pickle�s����#�#�C�(��
�������#�(�(�3�����4�9�9�5�	
��t�/�0�0�0��t�2�3�3�3��(�(�(�(��+�+�+�+�+r"�
mgr_stringza,a,a:f8za: f8; a: i8c���t|�}tj|�}tjt	j
||j��t	j
||j���y)Nr)r$r)r�rr	rr�)r�rr&rs    r �test_non_unique_picklez'TestBlockManager.test_non_unique_pickle�sR����$���#�#�C�(��
�������#�(�(�3�����4�9�9�5�	
r"c���td�}tj|�}tjt	j
||j��t	j
||j���td�}tj|�}tjt�j||j��t�j||j���y)N�a: categoryrre)r$r)r�rr	rr�r��assert_series_equalr
�_constructor_from_mgr)r�r&r�smgr�smgr2s     r �test_categorical_block_picklez.TestBlockManager.test_categorical_block_pickle�s�����'���#�#�C�(��
�������#�(�(�3�����4�9�9�5�	
�
!��,���$�$�T�*��
����H�*�*�4�d�i�i�*�@��H�*�*�5�u�z�z�*�B�	
r"c	���ttd��}tjj	d�jd�}t|j
�ttjdtj���|j��}t|f|ttjd��g��}tj|jd�j�|d�tj|jd	�j�|d	�tj|jd�j�|d�y)
N�abcrf)rgrgrgr\)r+r{ra)r�r�rr4)rr�r8r�r�rr?rr9r�rarr)�assert_almost_equalr��internal_values)r��colsr+�blockr&s     r �	test_igetzTestBlockManager.test_iget�s����T�%�[�!�����&�&�q�)�0�0��8����;�;�=�$�R�Y�Y�q����%@�A����
��
�5�(�$��b�i�i��l�8K�1L�M��
���s�x�x��{�:�:�<�f�Q�i�H�
���s�x�x��{�:�:�<�f�Q�i�H�
���s�x�x��{�:�:�<�f�Q�i�Hr"c�z�tdd��}|jt|j�dt	j
dgdz��|j
dt	j
dgdz��tj|jd	�j�t	j
d	gdz��tj|jd�j�t	j
dgdztj�
��tj|jd�j�t	j
dgdz��tj|jd�j�t	j
dgdztj�
��y)Nz
a,b,c: int�rg�r�rY�foorgr4�barrr\rf)r$�insertr>r�r8r��isetr)r*r�r�object_r�s  r �test_setzTestBlockManager.test_set�s(����$�7���
�
�3�s�y�y�>�3����%��1��(=�>�����B�H�H�e�W�q�[�)�*�
�#�#�C�H�H�Q�K�$?�$?�$A�2�8�8�Q�C�RS�G�CT�U�
�#�#��H�H�Q�K�'�'�)�2�8�8�U�G�a�K�r�z�z�+R�	
�	�#�#�C�H�H�Q�K�$?�$?�$A�2�8�8�Q�C�RS�G�CT�U�
�#�#��H�H�Q�K�'�'�)�2�8�8�U�G�a�K�r�z�z�+R�	
r"c�b�|jt|j�dtjt
t���|j|jjd�tjdt
��|jjd�}|j|�jtjk(sJ�|j�}|j|jjd�tjdt
��|jjd�}|j|�jtjk(sJ�|jt|j�dtjjd�j!t
�j#t$��|jjd�}|j|�jtjt$�k(sJ�|j|jjd�tjjd�j!t
��|j|�jtj&k(sJ�y)N�bazr\r�quuxrf)rr>r�r8�zerosr|r[r�get_loc�repeatr�r,r�consolidater�r�r�r}rH�float64)r�r&�idxrs    r �test_set_change_dtypez&TestBlockManager.test_set_change_dtype�s����
�
�3�s�y�y�>�5�"�(�(�1�D�*A�B�������"�"�5�)�2�9�9�U�A�+>�?��i�i����&���x�x��}�"�"�b�j�j�0�0�0���� ���	�	�$�*�*�$�$�U�+�R�Y�Y�u�a�-@�A��j�j� � ��'���y�y��~�#�#�r�z�z�1�1�1������
�
�O���I�I�!�!�!�$�4�4�Q�7�>�>�s�C�	
�
�j�j� � ��(���y�y��~�#�#�r�x�x��}�4�4�4��	�	��J�J���v�&��	�	�(=�(=�a�(@�(P�(P�QR�(S�	
��y�y��~�#�#�r�z�z�1�1�1r"c�*�|jd��}t|j|j�D]�\}}tj|j
|j
�t
|j
tj�r/|j
j|j
jur��J�|j
jj|j
jjur��J�|j�|jd��}t|j|j�D]�\}}|j
}|j
}tj||�t
|tj�r|j}|j}n,|jj}|jj}t
|t�r|�|���||ur��J�t
|tj�s||ur��J�|�|���J�y)NF)�deepT)
r?r�r�r)�assert_equalr+r-r8�ndarray�base�_ndarray�_consolidate_inplacer)	r�r&�cpr��cp_blk�bvals�cpvals�lbase�rbases	         r r�zTestBlockManager.test_copy�s���
�X�X�5�X�
!���s�z�z�2�9�9�5�	O�K�C���O�O�F�M�M�3�:�:�6��#�*�*�b�j�j�1��}�}�)�)�S�Z�Z�_�_�<�<�<��}�}�-�-�2�2�c�j�j�6I�6I�6N�6N�N�N�N�	O�	� � �"�
�X�X�4�X�
 ���s�z�z�2�9�9�5�	7�K�C���J�J�E��]�]�F��O�O�F�E�*��&�"�*�*�-������
�
�����,�,�����+�+���&�-�0��
�%�-�U�%�=O�P�P����
�
�3��E�)�)�)��}���6�6�)	7r"c�t�td�}|j�jtjk(sJ�y)Nza: sparse-1; b: sparse-2)r$r/r,r8r(r�s  r �test_sparsezTestBlockManager.test_sparses+���3�4���|�|�~�#�#�r�z�z�1�1�1r"c�r�td�}t|j�dk(sJ�t|t�sJ�y)Nza: sparse-1; b: sparse-2; c: f8rg)r$r>r�r-rr�s  r �test_sparse_mixedz"TestBlockManager.test_sparse_mixeds3���:�;���3�:�:��!�#�#�#��#�|�,�,�,r"zmgr_string, dtypezc: f4; d: f2�c: f4; d: f2; e: f8c�X�t|�}|j�j|k(sJ�yr(�r$r/r,�r�rr,r&s    r �test_as_array_floatz$TestBlockManager.test_as_array_floats(��
��$���|�|�~�#�#�u�,�,�,r"za: bool-1; b: bool-2z%a: i8-1; b: i8-2; c: i4; d: i2; e: u1zc: i4; d: i2; e: u1c�X�t|�}|j�j|k(sJ�yr(r>r?s    r �test_as_array_int_boolz'TestBlockManager.test_as_array_int_bool s(����$���|�|�~�#�#�u�,�,�,r"c�X�td�}|j�jdk(sJ�y)Nzh: datetime-1; g: datetime-2r^r>r�s  r �test_as_array_datetimez'TestBlockManager.test_as_array_datetime,s'���7�8���|�|�~�#�#�x�/�/�/r"c���td�}|jd�jdk(sJ�|jd�jdk(sJ�|j�jdk(sJ�y)Nz%h: M8[ns, US/Eastern]; g: M8[ns, CET]rzdatetime64[ns, US/Eastern]r4zdatetime64[ns, CET]rU)r$r�r,r/r�s  r �test_as_array_datetime_tzz*TestBlockManager.test_as_array_datetime_tz0sa���@�A���x�x��{� � �$@�@�@�@��x�x��{� � �$9�9�9�9��|�|�~�#�#�x�/�/�/r"�t)�float16�float32r(r��int64c���td�}tj|�}|j|�}|j	d�jj
|k(sJ�|j	d�jj
|k(sJ�|j	d�jj
|k(sJ�td�}tj|�}|j|d��}|j	d�jj
|k(sJ�|j	d�jj
|k(sJ�|j	d	�jj
|k(sJ�|j	d
�jj
|k(sJ�|j	d�jj
tjk(sJ�|j	d�jj
tjk(sJ�|tjk7r9|j	d�jj
tjk(sJ�y|j	d�jj
|k(sJ�y)Nr<rr4rfz6a,b: object; c: bool; d: datetime; e: f4; f: f2; g: f8�ignore)�errorsrhrurvrg)	r$r8r,r}r��typerrJ�
datetime64)r�rGr&�tmgrs    r �test_astypezTestBlockManager.test_astype6s����.�/���H�H�Q�K���z�z�!�}���y�y��|�!�!�&�&�!�+�+�+��y�y��|�!�!�&�&�!�+�+�+��y�y��|�!�!�&�&�!�+�+�+��Q�R���H�H�Q�K���z�z�!�H�z�-���y�y��|�!�!�&�&�!�+�+�+��y�y��|�!�!�&�&�!�+�+�+��y�y��|�!�!�&�&�!�+�+�+��y�y��|�!�!�&�&�!�+�+�+��y�y��|�!�!�&�&�"�*�*�4�4�4��y�y��|�!�!�&�&�"�*�*�4�4�4�����=��9�9�Q�<�%�%�*�*�b�m�m�;�;�;��9�9�Q�<�%�%�*�*�a�/�/�/r"c�F�d�}td�}|jd��}|||�td�}|jdtjdgt
ztj���|jd	tjd
gt
ztj���|jdtjdgt
ztj���|jd��}|rd
ntj}|jd�j|k(sJ�|jd	�j|k(sJ�|jd�j|k(sJ�|jd�jtjk(sJ�|jd�jtjk(sJ�td�}|jdtjdgt
ztj���|jd	tjd
gt
ztj���|jdtjdgt
ztj���|jd��}|jd�j|k(sJ�|jd	�j|k(sJ�|jd�j|k(sJ�|jd�jtjk(sJ�|jd�jtjk(sJ�|jd�jjsJtj��|jd�jtjk(sJ�|jd�jtjk(sJ�|jd�jtjk(sJ�y)Nc��t|j�}t|j�}t|�t|�k(sJ�|D]:}d}|D]-}|j|jk(j	�s�+d}n|r�:J�|D]:}d}|D]-}|j|jk(j	�s�+d}n|r�:J�y)z4compare the blocks, numeric compare ==, object don'tFTN)�setr�r>r+r�)�old_mgr�new_mgr�
old_blocks�
new_blocksrZ�foundr��obs        r �_comparez/TestBlockManager.test_convert.<locals>._compareSs����W�^�^�,�J��W�^�^�,�J��z�?�c�*�o�5�5�5� �
����$��B����B�I�I�-�2�2�4� $������u�

� �
����$��B����B�I�I�-�2�2�4� $������u�

r"zf: i8; g: f8T�r?za,b,foo: object; f: i8; g: f8r�1r\r4z2.rfzfoo.zstring[pyarrow_numpy]rgrhzEa,b,foo: object; f: i4; bool: bool; dt: datetime; i: i8; g: f8; h: f2rurvr��)r$�convertrr8r�r|rr�r,rJr(r�r�rNrOrH)r��using_infer_stringr[r&rVr,s      r �test_convertzTestBlockManager.test_convertRs���	�0��(���+�+�4�+�(����g���8�9������B�H�H�c�U�Q�Y�b�j�j�9�:�����B�H�H�d�V�a�Z�r�z�z�:�;�����B�H�H�f�X��\����<�=��+�+�4�+�(��+=�'�2�:�:���|�|�A��$�$��-�-�-��|�|�A��$�$��-�-�-��|�|�A��$�$��-�-�-��|�|�A��$�$����0�0�0��|�|�A��$�$��
�
�2�2�2��S�
��	����B�H�H�c�U�Q�Y�b�j�j�9�:�����B�H�H�d�V�a�Z�r�z�z�:�;�����B�H�H�f�X��\����<�=��+�+�4�+�(���|�|�A��$�$��-�-�-��|�|�A��$�$��-�-�-��|�|�A��$�$��-�-�-��|�|�A��$�$����0�0�0��|�|�A��$�$����0�0�0��|�|�A��$�$�)�)�8�2�=�=�8�)��|�|�A��$�$����0�0�0��|�|�A��$�$��
�
�2�2�2��|�|�A��$�$��
�
�2�2�2r"c���dD]_}td|���}|j�j|k(sJ�td|�d|���}|j�j|k(r�_J�y)N)rErIrUr[rRr^rdza: z; b: r>)r�r,r&s   r �test_interleavez TestBlockManager.test_interleave�sl��R�	1�E��s�5�'�]�+�C��<�<�>�'�'�5�0�0�0��s�5�'��u�g�6�7�C��<�<�>�'�'�5�0�0�0�		1r"))rrI)za: category; b: categoryrI)�a: category; b: category2rU)�a: category2rU)za: category2; b: category2rU)�a: f8rE)�a: f8; b: i8rE)�a: f4; b: i8rE)�a: f4; b: i8; d: objectrU)�a: bool; b: i8rU)�
a: complexrR)�a: f8; b: categoryrU)�a: M8[ns]; b: categoryrU)�a: M8[ns]; b: boolrU)�a: M8[ns]; b: i8rU)�a: m8[ns]; b: boolrU)�a: m8[ns]; b: i8rU)�a: M8[ns]; b: m8[ns]rUc�D�td�}|j�jdk(sJ�td�}|j�jdk(sJ�td�}|j�jdk(sJ�td�}|j�jdk(sJ�td�}|j�jdk(sJ�td	�}|j�jdk(sJ�td
�}|j�jdk(sJ�td�}|j�jdk(sJ�td�}|j�jd
k(sJ�td�}|j�jdk(sJ�td�}|j�jdk(sJ�td�}|j�jdk(sJ�td�}|j�jdk(sJ�td�}|j�jdk(sJ�td�}|j�jdk(sJ�td�}|j�jdk(sJ�y)NrrIrdrUrerfrErgrhrirjrkrRrlrmrnrorprqrrr>r?s    r �test_interleave_dtypez&TestBlockManager.test_interleave_dtype�sP��2��'���|�|�~�#�#�t�+�+�+��4�5���|�|�~�#�#�x�/�/�/���(���|�|�~�#�#�x�/�/�/���!���|�|�~�#�#�t�+�+�+���(���|�|�~�#�#�t�+�+�+���(���|�|�~�#�#�t�+�+�+��2�3���|�|�~�#�#�x�/�/�/��)�*���|�|�~�#�#�x�/�/�/���&���|�|�~�#�#�y�0�0�0��-�.���|�|�~�#�#�t�+�+�+��1�2���|�|�~�#�#�x�/�/�/��-�.���|�|�~�#�#�x�/�/�/��+�,���|�|�~�#�#�x�/�/�/��-�.���|�|�~�#�#�x�/�/�/��+�,���|�|�~�#�#�x�/�/�/��/�0���|�|�~�#�#�x�/�/�/r"c�^�|j|jjd�tjjd�j
t��|j|jjd�tjjd�j
t��|j|jjd�tjjd�j
t��|j|jjd�tjjd�j
t��|j|jjd�tjjd�j
t��|j�}|jdk(sJ�|j�j�}|jdk(sJ�t|jd	jt�sJ�tj |jd	jj"tj$t'|j�tj(�
��y)N�frfrYrZ�g�hrhr4rr\)rr�r%r8r�r�r�r|r'r��get_numeric_datar-r�r.rr)r*r/r9r>r�)r�r&�conss   r � test_consolidate_ordering_issuesz1TestBlockManager.test_consolidate_ordering_issues�s���������"�"�3�'����)>�)>�q�)A�)Q�)Q�RS�)T�U�������"�"�3�'����)>�)>�q�)A�)Q�)Q�RS�)T�U�������"�"�3�'����)>�)>�q�)A�)Q�)Q�RS�)T�U�������"�"�3�'����)>�)>�q�)A�)Q�)Q�RS�)T�U�������"�"�3�'����)>�)>�q�)A�)Q�)Q�RS�)T�U���� ���|�|�q� � � ���� �1�1�3���|�|�q� � � ��$�+�+�a�.�1�1�>�B�B�B�
�#�#��K�K��N�#�#�,�,�b�i�i��D�J�J��r�w�w�.W�	
r"c�>�td�}|jgd�d��}|j�rJ�tj|j
t
gd���tj|jd�j�|jd�j��tj|jd�j�|jd�j��tj|jd�j�|jd�j��tj|jd�j�|jd�j��y)	Nz3a: f8; b: i8; c: f8; d: i8; e: f8; f: bool; g: f8-2)rwrkrjrYr��axisrvrfr4rg)
r$�reindex_axis�is_consolidatedr)�assert_index_equalr�rrr�r)r�r&�	reindexeds   r �test_reindex_itemsz#TestBlockManager.test_reindex_items�s/���N�O���$�$�%9��$�B�	��,�,�.�.�.�
���i�o�o�u�5I�/J�K�
����H�H�Q�K�'�'�)�9�>�>�!�+<�+L�+L�+N�	
�	����H�H�Q�K�'�'�)�9�>�>�!�+<�+L�+L�+N�	
�	����H�H�Q�K�'�'�)�9�>�>�!�+<�+L�+L�+N�	
�	����H�H�Q�K�'�'�)�9�>�>�!�+<�+L�+L�+N�	
r"c��tdd��}|jdtjgd�tj���|j�}t
j|jtgd���t
j|j|jjd��j�|j|jjd��j��|j|jjd�tjgd	��d
��|rbt
j|j|jjd��j�tjgd���yt
j|j|jjd��j�tjgd	���y)
N�[int: int; float: float; complex: complex;str: object; bool: bool; obj: object; dt: datetimerrru�r4rfrgr\)rHrDrRr[rD)�Y@gi@g�r@T��inplace)��?r�r�)r$rr8r�rryr)r�r�rrr�r%r)r��using_copy_on_writer&�numerics    r �test_get_numeric_dataz&TestBlockManager.test_get_numeric_data�sk���
A��
��
	����B�H�H�Y�b�j�j�9�:��&�&�(��
���g�m�m�U�3V�-W�X�
����H�H�S�Y�Y�&�&�w�/�0�@�@�B��L�L����.�.�w�7�8�H�H�J�	
�	����M�M�!�!�'�*��H�H�*�+��	�	
�
��"�"�������*�*�7�3�4�D�D�F�����)�
�

�"�"�������*�*�7�3�4�D�D�F����.�/�
r"c���tdd��}|jdtjgd�tj���|j�}t
j|jtdg��t
j|j|jjd��j�|j|jjd��j��|jdtjgd��d	�
�|rbt
j|j|jjd��j�tjgd���yt
j|j|jjd��j�tjgd���y)Nr�rrrv)TFTr\r[rTr�)TTT)r$rr8r�r�
get_bool_datar)r�r�rrr�r%rr*)r�r�r&�boolss    r �test_get_bool_dataz#TestBlockManager.test_get_bool_datasT���
A��
��
	����B�H�H�0��
�
�C�D��!�!�#��
���e�k�k�5�&��?�;�
����H�H�S�Y�Y�&�&�v�.�/�?�?�A��J�J�u�{�{�*�*�6�2�3�C�C�E�	
�
	�
�
�1�b�h�h�2�3�T�
�B���'�'�������*�*�6�2�3�C�C�E����+�,�
�

�'�'�������*�*�6�2�3�C�C�E����,�-�
r"c�,�ttd��y)Nub,א: object)�reprr$)r�s r �test_unicode_repr_doesnt_raisez/TestBlockManager.test_unicode_repr_doesnt_raise4s���Z�*�
+�,r"�a,b,c: i8-1; d,e,f: i8-2za,a,a: i8-1; b,b,b: i8-2c��t|�}t|jddd�|j�}|j	|�sJ�y)Nrn)r$rr�r��equals)r�r�bm1�bm2s    r �test_equalszTestBlockManager.test_equals7s;��
��$���3�:�:�d��d�+�S�X�X�6���z�z�#���r")z	a:i8;b:f8za:i8;b:f8;c:c8;d:bza:i8;e:dt;f:td;g:stringza:i8;b:category;c:category2zc:sparse;d:sparse_na;b:f8c���t|�}tj|j�}|D]G}t	t|�|j�}|j|�sJ�|j|�r�GJ�yr()r$�	itertools�permutationsr�rr�r�r�)r�r�bm�block_perms�bm_perm�bm_thiss      r �(test_equals_block_order_different_dtypesz9TestBlockManager.test_equals_block_order_different_dtypes@si���
�
#���,�,�R�Y�Y�7��"�	&�G�"�5��>�2�7�7�;�G��9�9�W�%�%�%��>�>�"�%�%�%�	&r"c�h�tdd��}|j�j�gd�k(sJ�y)NrEru)r�)rtr��@g@g@)r��external_values�tolistr�s  r �test_single_mgr_ctorz%TestBlockManager.test_single_mgr_ctorSs/����q�1���"�"�$�+�+�-�1J�J�J�Jr"�valuer4�Truer�g@c���td�}dt|�j�d�}tjt
|��5|j
dgdg|��ddd�y#1swYyxYw)Nr�z9For argument "inplace" expected type bool, received type �.r�r4rfr�)r$rNr�r�r�r��replace_list)r�r�r�r�s    r �test_validate_bool_argsz(TestBlockManager.test_validate_bool_argsWsl���3�4��
�!�%�[�1�1�2�!�
5�	��]�]�:�S�
1�	6����a�S�1�#�u��5�	6�	6�	6�s�A � A)c��td�}|jdtjdg��t	j
|jtjgd�trdnd���t	j
|jtjgd�trdnd���t|j�dk(sJ�y)	N�a,b,c: i8; d: f8r�rrr4rrJr�r\)rrrr4rf)r$�_iset_split_blockr8r�r)r*�blklocsr�blknosr>r��r�r�s  r �test_iset_split_blockz&TestBlockManager.test_iset_split_blockbs���
�*�
+��
���Q����!��
�.�
�#�#��J�J������W�'�R�	
�	�#�#��I�I�r�x�x��t�G��Q�	
��2�9�9�~��"�"�"r"c���td�}|jdtjdg�tjt	td��g��t
j|jtjgd�trdnd���t
j|jtjgd�trdnd���t|j�d	k(sJ�y)
Nr�rrBr�rJr�r\)rrfrfr4rg)
r$r�r8r�r��ranger)r*r�rr�r>r�r�s  r �test_iset_split_block_valuesz-TestBlockManager.test_iset_split_block_valuesns���
�*�
+��
���Q����!��
�r�x�x��e�B�i��8I�/J�K�
�#�#��J�J������W�'�R�	
�	�#�#��I�I�r�x�x��t�G��Q�	
��2�9�9�~��"�"�"r"N)*r�r�r�r�r�r�r�r�r�r	rrr r*r�r9r;r8rIr(r@r�rJr�rBrDrFrQrarcrtr{r�r�r�r�r�r�r�r�r�r�r%r"r r�r�ss���
�*
,��[�[���\�J��+G�H�
�I�
�

�I�
�2�2#7�J2�-�
�[�[����
�"�*�*�	%�(=�r�z�z�'J�K��-�	�-��[�[����
#�R�X�X�.�
4�b�h�h�?�
"�B�H�H�-�	
��-��-�0�0��[�[���S�"U�V�0�W�0�693�v1��[�[����	
��.#0�/�.#0�J
�"
�.�@�6-��[�[����1�3M�N������[�[����	
�	�&�	�&�K��[�[���W�q�&�)�S�&A�B�6�C�6�
#�
#r"r�c�t�|jdk(r|j�S|j�jS)Nr4)rar�r/�T)r&s r �	_as_arrayr�{s.��
�x�x�1�}��"�"�$�$��<�<�>���r"c	�@�eZdZede�ede�edef��edef��edef��edef��gZejjde�d	��Z
ejjde�d
��Zejjde�ejjddejd
g�d���Zejjde�ejjddejd
g�d���Zy)�TestIndexingrErIza,b,c,d,e,f: f8rza,b,c,d,e,f: i8za,b: f8; c,d: i8; e,f: stringza,b: f8; c,d: i8; e,f: f8r&c
�2�d�}|jdksJ|j��t|j�D�][}|||td��|||td��|||td��|||tdd��|||tddd��|jdks�v|||tj|j
|tj�	��|||tj|j
|tj�	��|j
|dk\s��|||tj|j
|�dzdk(�|||tjgd
�tj�	����^y)Nc	�(�t|�}t|tj�r�|j|}t|�rgt|�r\t|�t|�k7rEtj|tjt|�t|�z
t��g�}t|t�r|j||��}n^|jdk(rD|dk(r?t|tj�r%|jtk(r|j|�}nt|��td�f|z|fz}tj ||t|�d��tj"|j|||j|�y)Nr\r}r4rF��check_dtype)r�r-r8r.r�r>�concatenater$r[r��	get_slicerar,�get_rows_with_mask�	TypeErrorr)r*r�)r&r~�slobjr��ax�sliced�	mat_slobjs       r �assert_slice_okz4TestIndexing.test_get_slice.<locals>.assert_slice_ok�s6���C�.�C��%����,��X�X�d�^���r�7�s�5�z�c�%�j�C��G�.C��N�N������R��3�u�:�)=�T� J�K��E��%��'����u�4��8�����A�
��A�I��u�b�j�j�1��K�K�4�'��/�/��6�� ��&�&��t����-���8�I��'�'��I��	�&� 1�u�
�
�!�!�#�(�(�4�.��"7����T�9J�Kr"rfrg�dr4rhr���r\)TTF)
rar�r�r8r�r6r�r$r9r�)r�r&r�r�s    r �test_get_slicezTestIndexing.test_get_slice�s:��	L�@�x�x�1�}�&�c�h�h�&�}�����/�	�B��C��U�4�[�1��C��U�1�X�.��C��U�3�Z�0��C��U�1�a�[�1��C��U�1�a��_�5��x�x�!�|� ��R�������2��b�h�h�)O�P���R����#�)�)�B�-�r�x�x�)P�Q��9�9�R�=�A�%�#�C��R�Y�Y�s�y�y��}�-E��-I�Q�-N�O�#��R����*=�R�X�X�!N��#	r"c
�~�d�}t|j�D�]!}|||tjgtj����|||tjgd�tj����|||tjtt|j|��tj����|j|dk\s��|||tjgd�tj����|||tjgd�tj������$y)Nc�(�t|�}|j||�}tjt	j|||�t|�d��tj
|j|j|�|j|�y)NFr�)r��taker)r*r8r�r�)r&r~�indexerr��takens     r �assert_take_okz.TestIndexing.test_take.<locals>.assert_take_ok�sp���C�.�C��H�H�W�d�+�E��'�'�����W�d�+�Y�u�-=�5�
�
�!�!�#�(�(�4�.�"5�"5�g�">��
�
�4�@P�Qr"r\)r��rrrrg�rr4rf�rnr����)r�rar8r�r�r�r6)r�r&r�r�s    r �	test_takezTestIndexing.test_take�s���	R�����/�
	W�B��3��B�H�H�R�r�w�w�,G�H��3��B�H�H�Y�b�g�g�,N�O���R����$�u�S�Y�Y�r�]�/C�*D�B�G�G�!T�
��y�y��}��!��s�B�����"�'�'�0R�S��s�B�����R�W�W�0U�V�
	Wr"rxNr�c
��d�}t|j�D]�}|||tg�|�||||j||�||||j|gd�|�|||tgd��|�|||td|j|ddg�|�|j|dk\s��||||j|dd|�||||j|ddd	�|�||||j|gd
�|���y)Nc�4�t|�}|j|j|�}|j|||��}t	j
t
j||||��t|�d��t	j|j||�y�NrwFr�)	r�r��get_indexer_forrr)r*�algos�take_ndr�)r&r~�
new_labelsrxr�r�r�s       r �assert_reindex_axis_is_okzATestIndexing.test_reindex_axis.<locals>.assert_reindex_axis_is_ok�s����C�.�C��h�h�t�n�4�4�Z�@�G��(�(��T�j�(�Q�I��'�'��
�
�c�7�D�Z�H��)�$�!�
�

�!�!�)�.�.��"6�
�Cr"r��rrr"rrr"rgr�rn)rr4rfrr4rf)r�rarr�r6)r�rxr&r�r�s     r �test_reindex_axiszTestIndexing.test_reindex_axis�s��
	D�����/�	�B�%�c�2�u�R�y�*�E�%�c�2�s�x�x��|�Z�H�%�c�2�s�x�x��|�I�/F�
�S�%�c�2�u�5J�/K�Z�X�%��R���s�x�x��|�A���>�?��
��y�y��}��!�)�#�r�3�8�8�B�<���3D�j�Q�)�#�r�3�8�8�B�<���B��3G��T�)���S�X�X�b�\�*<�=�z��	r"c
�V�d�}t|j�D�]
}|||tg�tjgtj
��|�||||j|tj|j|�|�|||tdg|j|z�tj|j|�|�||||j|ddd�tj|j|�|�||||j|tj|j|�ddd�|�|||tgd��tjgd��|�|||tgd��tjgd��|�|||td|j|dd	g�tjgd
��|�|j|dk\s���|||tgd��tjgd��|���y)
Nc��t|�}tj||||��}|j||||��}t	j
|t|�d��t	j|j||�yr�)r�r�r��reindex_indexerr)r*r�r�)r&r~r�r�rxr��
reindexed_matr�s        r �assert_reindex_indexer_is_okzGTestIndexing.test_reindex_indexer.<locals>.assert_reindex_indexer_is_okst���C�.�C�!�M�M�#�w���T�M��+�+��G�T�j�,��I�
�'�'��y��3��
�
�!�!�)�.�.��"6�
�Cr"r\rrnr�r�)rnrrnrr")rnrnrnrgr�)	r�rarr8r�r�r�r9r6)r�rxr&r�r�s     r �test_reindex_indexerz!TestIndexing.test_reindex_indexers���		D�����/�)	�B�(��R��r��B�H�H�R�r�w�w�$?��
�
)��R����"��r�y�y����2��'?��
�
)����u�g��	�	�"�
�-�.��	�	�#�)�)�B�-�(��
�
)��R����"��d��d�+�R�Y�Y�s�y�y��}�-E�z�
�
)��R����"��r�y�y����2��'?��"��'E�z�
�
)��R��4�5�r�x�x�	�7J�J�
�
)��R��4�5�r�x�x��7L�j�
�
)����u�c�h�h�r�l�1�o�u�5�6�����&��
��y�y��}��!�,����/�0��H�H�Y�'���G)	r")r�r�r�r�r|r$�MANAGERSr�r�r�r�r�r8r�r�r�r%r"r r�r��s4��	�$��"��$��"��$�!��6��$�!��6��2��t�D��.�A�4�@��H��[�[���U�H�-�5�.�5�n�[�[���U�H�-�W�.�W�*�[�[���U�H�-��[�[���\�D�"�&�&�%�+@�A��B�.��:�[�[���U�H�-��[�[���\�D�"�&�&�%�+@�A�5�B�.�5r"r�c��eZdZejjdedd�dfeddd�dfeddd�dfeddd�dfeddd�dfg�d��Zejjd	eddd�eddd�g�d
��Zd�Z	ejjd	edd�ed
d�eddd�edd
d�edd�edd�edd�eddd�eddd�eddd�g
�d��Z
ejjd	edd�edd�edd�eddd�eddd�g�d��Zejjddgeddd�fdgeddd�fgd�eddd�fgd�eddd�fddgeddd�fddgeddd�fg�d��Zejjdgdggd�dgdggd�gd�gd�gd�g	�d ��Z
ejjdedd�gd�fedd�gfedd�gfg�d!��Zejjd"edd�gd�fedd�gfedd�gfeddd�gd#�fg�d$��Zd%�Zejjd&edd�dgfedd�dgd'�feddd�dgd#�fgd(�dgd(�fedd�d
gfedd�d
gd)�feddd�d
gd*�fgd(�d
gd+�fedd�dgfedd�dgd�fgd(�dgd,�fg�d-��Zejjd.edd�gd(�g�d/��Zy)0�TestBlockPlacementz
slc, expectedrrhrfrgr4rnc�6�tt|��|k(sJ�yr()r>r�r��slcr�s   r �test_slice_lenz!TestBlockPlacement.test_slice_len<s���>�#�&�'�8�3�3�3r"r�c�~�d}tjt|��5t|�ddd�y#1swYyxYw)Nzslice step cannot be zeror��r�r�r�r�r�r�r�s   r �test_zero_step_raisesz(TestBlockPlacement.test_zero_step_raisesIs2��)��
�]�]�:�S�
1�	 ��3��	 �	 �	 ���3�<c�l�tddd�}t|�}|jtddd�k(sJ�y)Nrgrnr�)r�rr�)r�r��bps   r �!test_slice_canonize_negative_stopz4TestBlockPlacement.test_slice_canonize_negative_stopOs5���A�r�2���
�C�
 ���z�z�U�1�d�B�/�/�/�/r"NrBc�~�d}tjt|��5t|�ddd�y#1swYyxYw)Nzunbounded slicer�r�r�s   r �test_unbounded_slice_raisesz.TestBlockPlacement.test_unbounded_slice_raisesVs4��$ ��
�]�]�:�S�
1�	 ��3��	 �	 �	 �r�r�c�2�t|�jrJ�yr(�r�
is_slice_like)r�r�s  r �test_not_slice_like_slicesz-TestBlockPlacement.test_not_slice_like_slicesls��"�#�&�4�4�4�4�4r"zarr, slc�er�)rrurB�ru��c�8�t|�j|k(sJ�yr()r�as_slice)r�r@r�s   r �test_array_to_slice_conversionz1TestBlockPlacement.test_array_to_slice_conversionys���c�"�+�+�s�2�2�2r"r@r����)rnrr4rf)r�rrfrh)r4rrn)r4r4r4c�2�t|�jrJ�yr(r�)r�r@s  r �test_not_slice_like_arraysz-TestBlockPlacement.test_not_slice_like_arrays�s��"�#�&�4�4�4�4�4r"c�6�tt|��|k(sJ�yr()r�rr�s   r �test_slice_iterz"TestBlockPlacement.test_slice_iter�s��
�N�3�'�(�H�4�4�4r"zslc, arr)rgrfr4c��tjt|�jt	j
|tj���y)Nr\)r)r*rr/r8�asarrayr�)r�r�r@s   r �test_slice_to_array_conversionz1TestBlockPlacement.test_slice_to_array_conversion�s1��	�#�#��3��(�(�"�*�*�S����*H�	
r"c	�l�ttdd��}|jd�jtddd�k(sJ�|jt	j
d��jtddd�k(sJ�t
|jt	j
ddd���gd�k(sJ�y)	Nrrur4rvrBrfrn)rururururu)rr��addrr8r9r�)r��bpls  r �test_blockplacement_addz*TestBlockPlacement.test_blockplacement_add�s����U�1�a�[�)���w�w�q�z�"�"�e�A�q�!�n�4�4�4��w�w�r�y�y��|�$�-�-��q�"�a��@�@�@��C�G�G�B�I�I�a��B�/�0�1�_�D�D�Dr"zval, inc, expectedr�)r4rfrh)���
)rrr)rr�)rr4rgc�T�tt|�j|��|k(sJ�yr()r�rr
)r��val�incr�s    r �test_blockplacement_add_intz.TestBlockPlacement.test_blockplacement_add_int�s'��"�N�3�'�+�+�C�0�1�X�=�=�=r"rc��d}tjt|��5t|�j	d�ddd�y#1swYyxYw)Nziadd causes length changer�r)r�r�r�rr
)r�rr�s   r �"test_blockplacement_add_int_raisesz5TestBlockPlacement.test_blockplacement_add_int_raises�s=��)��
�]�]�:�S�
1�	)��3��#�#�C�(�	)�	)�	)�s�A�A)r�r�r�r�r�r�r�r�r�r�r�r�rrrrrrrr%r"r r�r�;sL���[�[����
�1�a�[�!��
�1�a��^�Q��
�1�a��^�Q��
�1�a��^�Q��
�1�a��_�a� �	
�	�4�	�4��[�[���U�U�1�a��^�U�1�a��^�$D�E� �F� �
0��[�[���
��$����"�d�O��$��b�!��$��B��
�"�d�O��$��O��"�b�M��"�d�B���$��B���"�b�"��
	
��" �#�" �
�[�[���
��!�Q�K��#�q�M��#�s�O��#�s�B���!�S�"��	
�	�5�	�5��[�[�����S�%��1�a�.�!��U�E�#�s�A�&�'�
��a��A��'�
��q�"�a��)���X�u�Q��S�)�*���V�U�1�a��_�%�
	
�
�3�
�3��[�[���
��
�D��
�E�
�D�����
	
�
�5�
�5��[�[����
��1�+�y�	!�E�!�Q�K��#4�u�Q��{�B�6G�H��5�	�5��[�[����
�1�a�[�)�$�
�1�a�[�"��
�1�a�[�"��
�1�a��_�i�(�		
��
��
�
E��[�[����
�1�a�[�!�R� �
�1�a�[�!�Y�'�
�1�a��_�a��+�
��9�%�
�1�a�[�"�b�!�
�1�a�[�"�l�+�
�1�a��_�b�,�/�
��L�)�
�1�a�[�"�b�!�
�1�a�[�"�i�(�
��I�&�	
�� >�!� >��[�[���U�U�1�a�[�)�$<�=�)�>�)r"r�c
��eZdZejd�d�d�d�d�d�d�d�g�	�d
��Zd�Zejjde	je	je	jg�d
��Z
ejjde	je	je	jg�d��Zd�Zd�Zdefd�Zdedefd�Zy)�TestCanHoldElementc��|Sr(r%�r5s r r�zTestCanHoldElement.<lambda>�s��a�r"c�"�|j�Sr()�	to_seriesrs r r�zTestCanHoldElement.<lambda>�s��a�k�k�m�r"c��|jSr()r�rs r r�zTestCanHoldElement.<lambda>�s
��a�g�g�r"c��t|�Sr()r�rs r r�zTestCanHoldElement.<lambda>�s
��d�1�g�r"c�,�|jt�Sr()r}rUrs r r�zTestCanHoldElement.<lambda>�s��a�h�h�v�&�r"c�,�tj|�Sr()r8r
rs r r�zTestCanHoldElement.<lambda>�s��b�j�j��m�r"c��|dSr�r%rs r r�zTestCanHoldElement.<lambda>�s
��a��d�r"c��|ddSr�r%rs r r�zTestCanHoldElement.<lambda>�s��a���e�r"rc��|jS)z�
        Functions that take an Index and return an element that should have
        blk._can_hold_element(element) for a Block with this index's dtype.
        r)r�rs  r �elementzTestCanHoldElement.element�s��"�}�}�r"c�,�tddg�}|jg�sJ�tj|jj��}|jd�sJ�d|d<|dtjusJ�tjd�tddd�g}|D]}|j|�sJ�||d<�tddd�}|j|�rJ�d}tjt|��5||d<ddd�y#1swYyxYw)Nrrz
2010-10-10i�rBzLvalue should be a 'Timestamp', 'NaT', or array of those. Got 'date' instead.r�)r��_can_hold_element�pdr�r+r�NaTr8rOrrr�r�r�)r�rr@�valsrr�s      r �$test_datetime_block_can_hold_elementz7TestCanHoldElement.test_datetime_block_can_hold_element�s���Z�!��-���&�&�r�*�*�*��h�h�u�|�|�)�)�+�,���&�&�t�,�,�,���A���1�v��������
�
�l�+�X�d�B��-C�D���	�C��*�*�3�/�/�/��C��F�	��4��R� ���*�*�3�/�/�/�
5�	��]�]�9�C�
0�	��C��F�	�	�	�s�;D
�
Dr,c���tjgd�|��}tj|�}t	|j
t
dg�d��}|jg�sJ�y)N)r4rgrhr\r4rfr`)r8r�r�from_breaksrr�rr))r�r,r'r@�iir�s      r �(test_interval_can_hold_element_emptylistz;TestCanHoldElement.test_interval_can_hold_element_emptylist�sO���h�h�y��.��
�
&�
&�s�
+������.�!��"5�A�>���$�$�R�(�(�(r"c�*�tjgd�|��}tj|�}t	|j
t
dg�d��}||�}|j||d�|j|�sJ�tj|ddd�	�}||�}tjt�5|j||d
�ddd�|j|�rJ�tjtd�td�td�g�}||�}tjt�5|j||d
�ddd�|j|�rJ�tjtd�td�td�g�}	||	�}tjt�5|j||d
�ddd�|j|�rJ�y#1swY��$xYw#1swY��xYw#1swY�6xYw)
N)r4rgrh�	r\r4rfr`Trn�neither)�closedFrgrh)r8r�rr/rr�r�check_series_setitemr)r)�assert_produces_warning�
FutureWarningrr)
r�r,r'r@r0r��elem�ii2�ii3�ii4s
          r �test_interval_can_hold_elementz1TestCanHoldElement.test_interval_can_hold_elements����h�h�|�5�1��
�
&�
&�s�
+������.�!��"5�A�>���r�{���!�!�$��D�1��$�$�T�*�*�*��'�'��C�R���C���s�|��
�
'�
'�
�
6�	7��%�%�d�B��6�	7��(�(��.�.�.��'�'��1��y��|�Y�q�\�(R�S���s�|��
�
'�
'�
�
6�	7��%�%�d�B��6�	7��(�(��.�.�.��'�'��1��y��|�Y�q�\�(R�S���s�|��
�
'�
'�
�
6�	7��%�%�d�B��6�	7��(�(��.�.�.�.�	7�	7��	7�	7��	7�	7�s$�:G0�=G=�H	�0G:�=H�	Hc��tddd��}t|jjdd�t	dg�d��}|jg�sJ�y)N�2016rg�Y��periods�freqr4rfr`)rrr�r~rr))r��pir�s   r �&test_period_can_hold_element_emptylistz9TestCanHoldElement.test_period_can_hold_element_emptylist%sJ��
�&�!�#�
6������(�(��A�.���s�0C�!�L���$�$�R�(�(�(r"c���tddd��}||�}|j||d�|jd�dd}||�}tjt
�5|j||d�ddd�|j
d	�dd}||�}tjt
�5|j||d�ddd�y#1swY�[xYw#1swYyxYw)
Nr?rgr@rAT�DrnFrq)rr6�asfreqr)r7r8�to_timestamp)r�r'rDr9�pi2�dtis      r �test_period_can_hold_elementz/TestCanHoldElement.test_period_can_hold_element+s���
�&�!�#�
6���r�{���!�!�$��D�1��i�i��n�S�b�!���s�|��
�
'�
'�
�
6�	7��%�%�d�B��6�	7��o�o�c�"�3�B�'���s�|��
�
'�
'�
�
6�	7��%�%�d�B��6�	7�	7�	7�	7��
	7�	7�s�C
�0C�
C�C"r�c��|jjd}|r|j|�sJ�y|j|�rJ�yr�)r�r�r))r��objr9r�r�s     r �check_can_hold_elementz)TestCanHoldElement.check_can_hold_element=sB���h�h�o�o�a� ����(�(��.�.�.��,�,�T�2�2�2�2r"�indexc��|jj�}t|d��}|j|||�t	|�r||d<n||dt|�|r|j|usJ�y|jtk(sJ�y)NFr\r)	r�r?r
rOrr>r�r,rU)r�r9rPr�r@�sers      r r6z'TestCanHoldElement.check_series_setitemDsy���k�k��� ���S�u�%���#�#�C��w�7��T�?��C��F�#�C��#�d�)����9�9��#�#�#��9�9��&�&�&r"N)r�r�r�r��fixturer'r-r�r�r8rJ�uint64r(r1r=rErLr[rOrr6r%r"r rr�s����V�^�^��#���&�#���	
������:�[�[���W�r�x�x����B�J�J�&G�H�)�I�)��[�[���W�r�x�x����B�J�J�&G�H�/�I�/�:)�7�$3��3�'��'��'r"rc��eZdZd�Zy)�TestShouldStorec�F�tgd��}t|�}|jjd}|j	|�sJ�|j	|dd�sJ�|j	|j��rJ�|j	t
j|��rJ�y)N)rX�B�Crrn)rr	r�r��should_store�
as_orderedr8r
)r��catr�r�s    r �test_should_store_categoricalz-TestShouldStore.test_should_store_categoricalVs����/�*��
�s�^���g�g�n�n�Q�������$�$�$�����C�R��)�)�)��#�#�C�N�N�$4�5�5�5��#�#�B�J�J�s�O�4�4�4�4r"N)r�r�r�r]r%r"r rVrVUs��
5r"rVc���tjddg�}ttd��}d}t	j
t|��5t||d��ddd�y#1swYyxYw)Nr�r�rfz:Wrong number of dimensions. values.ndim != ndim \[1 != 2\]r�r`)r8r�rr�r�r�r�r)r+r{r�s   r �test_validate_ndimr_fsV��
�X�X�s�C�j�
!�F��u�Q�x�(�I�
G�C�	���z��	-�.��6�9�1�-�.�.�.�s�	A!�!A*c�Z�tgd��}tgd��j|�}ttgd���j|�}|jj
djj|jj
djjk(sJ�y)N)rr4rfrgrhr�r)rr
�reindexrr�r�r.r�)r)rjrZs   r �test_block_shaperbos{��
��
 �C��y��!�!�#�&�A��{�9�%�&�.�.�s�3�A��6�6�=�=���$�$�,�,����
�
�a�0@�0I�0I�0Q�0Q�Q�Q�Qr"c
��tjjtjddg��}||tt
t|���|j��}|jjdvsJ�|tur�|jdusJ�||t
t|��|j|j��}|jjdvsJ�|jdusJ�||j�t
t|��|j|j��}|jjdvsJ�|jdusJ�yy)Nr4rfr`)r��uF)r,ra)r*�arrays�NumpyExtensionArrayr8r�rr�r>rar,�kindr�is_extension�to_numpy)r!r@r�s   r �test_make_block_no_pandas_arrayrjws$��
�)�)�
'�
'����!�Q��(8�
9�C���n�U�3�s�8�_�=�C�H�H�
M�F��<�<���
�*�*�*��j� ��"�"�e�+�+�+��S�%��C��/�������R���|�|� � �J�.�.�.��"�"�e�+�+�+���L�L�N�E�#�c�(�O�3�9�9�3�8�8�
���|�|� � �J�.�.�.��"�"�e�+�+�+�!r"r()Errr�r��numpyr8r��pandas._libs.internalsr�
pandas.compatr�pandas.util._test_decorators�util�_test_decoratorsrc�pandas.core.dtypes.commonr�pandasr*rr	r
rrr
rrr�pandas._testing�_testingr)�pandas.core.algorithms�core�
algorithmsr��pandas.core.arraysrrr�pandas.core.internalsrrr�pandas.core.internals.blocksrrr�skip_array_manager_invalid_test�
pytestmarkrSr!r&r2rAr|r�r�r$r�r�r�r�r�r�rrVr_rbrjr%r"r �<module>r}sP����	��
�1��)�)�/��
�
�
��&�&���
��
���
/�
/�
�����	�:�.�/��0��������Q�
���15��)�V?�r�<�~���,��,�r)�r)�jE#�E#�P�w�w�tO)�O)�dE'�E'�P5�5�".�R�,r"

Youez - 2016 - github.com/yon3zu
LinuXploit