a
    þdÕe  ã                   @   sv   d dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dl	m
Z
 d dlZd dlmZ d dlmZ G dd„ dƒZdS )é    N)ÚDtype)Úis_bool_dtype)Úna_value_for_dtype)Únargsortc                   @   sê  e Zd ZU dZdd„ Zdd„ Zej dddg¡d	d
„ ƒZ	dd„ Z
dd„ Zdd„ Zdd„ Zej dddg¡dd„ ƒZdd„ Zdd„ Zdd„ Zdd„ Zej d d!d"g¡d#d$„ ƒZej d d!d"g¡d%d&„ ƒZej d'd(d)d*d+d,dejfd-dejfd.d/g¡d0d1„ ƒZd2d3„ Zej d4d5ejg d6¢e d7¡d8fd9ejg d:¢e d7¡d8fg¡d;d<„ ƒZej d=ddg¡d>d?„ ƒZej d=ddg¡d@dA„ ƒZej d=ddg¡dBdC„ ƒZej dDej dEdF„ g¡ej d dGdF„ ej!g¡dHdI„ ƒƒZ"dJdK„ Z#dLdM„ Z$dNdO„ Z%dPdQ„ Z&dRdS„ Z'dTdU„ Z(e e)¡Z*e+e,dV< dWdX„ Z-dYdZ„ Z.d[d\„ Z/ej d]ddg¡ej d^d_g d`¢fdag db¢fdcg dd¢fg¡dedf„ ƒƒZ0dgdh„ Z1ej didjd_g¡dkdl„ ƒZ2ej d^dmdndnggdndjdnggdadadjggdjdndaggdodndnggg¡dpdq„ ƒZ3ej dig dr¢¡dsdt„ ƒZ4dudv„ Z5dwdx„ Z6dydz„ Z7d{d|„ Z8d}d~„ Z9dd€„ Z:dd‚„ Z;ej dƒdadjdcg d„¢g¡d…d†„ ƒZ<ej d‡dcdˆdjie=dˆfdni e=d‰fdjdcgi e=dŠfdcd‹dŒie>dfg¡dŽd„ ƒZ?dd‘„ Z@d’d“„ ZAd”d•„ ZBd–d—„ ZCej dDejej ejDg¡d˜d™„ ƒZEdšd›„ ZFdS )œÚBaseMethodsTestsz%Various Series and DataFrame methods.c                 C   s@   ddl m} |jd|dd}|jtjks,J ‚|j|jks<J ‚d S )Nr   )Ú_default_hash_keyzutf-8F)ÚencodingZhash_keyZ
categorize)Zpandas.core.util.hashingr   Z_hash_pandas_objectÚdtypeÚnpZuint64Úshape)ÚselfÚdatar   Úres© r   úl/var/www/html/stable-diffusion-webui/venv/lib/python3.9/site-packages/pandas/tests/extension/base/methods.pyÚtest_hash_pandas_object   s    ÿz(BaseMethodsTests.test_hash_pandas_objectc                 C   sF   t |dƒst dt|ƒ› ¡ t |j¡}|jd }|jdu sBJ ‚d S )NÚvalue_countsz$value_counts is not implemented for ÚdropnaT)	ÚhasattrÚpytestÚskipÚtypeÚinspectÚ	signaturer   Ú
parametersÚdefault)r   r   ÚsigÚkwargr   r   r   Ú test_value_counts_default_dropna   s
    

z1BaseMethodsTests.test_value_counts_default_dropnar   TFc                 C   s`   |d d… }|r ||  ¡   }n|}t |¡j|d ¡ }t |¡j|d ¡ }t ||¡ d S )Né
   )r   )ÚisnaÚpdÚSeriesr   Ú
sort_indexÚtmÚassert_series_equal)r   Zall_datar   ÚotherÚresultÚexpectedr   r   r   Útest_value_counts'   s    z"BaseMethodsTests.test_value_countsc                 C   s  |d d…   ¡ }t || ¡   ¡}tj||jd}|jdd ¡ }t	|tj
ƒsvtjdt|ƒ gt|ƒ |jdd}n&tjd|jdd}dt|ƒ ||d	k< t|jd
dƒdks¼t	|jtjƒrÈ| d¡}n:t|jd
dƒdkræ| d¡}nt|jƒtju r| d¡}t ||¡ d S )Nr   ©r	   T)Ú	normalizeé   Z
proportion)ÚindexÚnameg        r   ZstorageÚ Zpyarrowzdouble[pyarrow]Zpyarrow_numpyÚfloat64ZFloat64)Úuniquer
   Úarrayr    r!   r"   r	   r   r#   Ú
isinstanceZCategoricalÚlenr-   ÚgetattrZ
ArrowDtypeZastyper   ZNAr$   r%   )r   r   ÚvaluesÚserr'   r(   r   r   r   Ú test_value_counts_with_normalize4   s&    ÿÿ
z1BaseMethodsTests.test_value_counts_with_normalizec                 C   s8   t  d|i¡}|jdd}t  ddg¡}t ||¡ d S )NÚAÚcolumns©Úaxisr   r,   )r!   Ú	DataFrameÚcountr"   r$   r%   )r   Údata_missingÚdfr'   r(   r   r   r   Ú
test_countR   s    zBaseMethodsTests.test_countc                 C   s&   t  |¡}| ¡ }d}||ks"J ‚d S )Nr,   )r!   r"   r>   )r   r?   r7   r'   r(   r   r   r   Útest_series_countX   s    
z"BaseMethodsTests.test_series_countc                 C   s$   t  |¡ t¡}t|t jƒs J ‚d S ©N)r!   r"   ÚapplyÚidr3   ©r   r   r'   r   r   r   Útest_apply_simple_series_   s    z)BaseMethodsTests.test_apply_simple_seriesÚ	na_actionNÚignorec                 C   s*   |j dd„ |d}| ¡ }t ||¡ d S )Nc                 S   s   | S rC   r   ©Úxr   r   r   Ú<lambda>e   ó    z+BaseMethodsTests.test_map.<locals>.<lambda>)rH   )ÚmapZto_numpyr$   Úassert_numpy_array_equal)r   r?   rH   r'   r(   r   r   r   Útest_mapc   s    zBaseMethodsTests.test_mapc                 C   s8   t  |¡ ¡ }t  tjg d¢tjd¡}t ||¡ d S ©N©é   r   r,   r*   )r!   r"   Úargsortr
   r2   Úintpr$   r%   )r   Údata_for_sortingr'   r(   r   r   r   Útest_argsorti   s    zBaseMethodsTests.test_argsortc                 C   s,   |  ¡ }tjg d¢tjd}t ||¡ d S rQ   )rT   r
   r2   rU   r$   rO   )r   Údata_missing_for_sortingr'   r(   r   r   r   Útest_argsort_missing_arrayo   s    z+BaseMethodsTests.test_argsort_missing_arrayc                 C   sj   d}t jt|d t |¡ ¡ }W d   ƒ n1 s60    Y  t tjg d¢tjd¡}t  	||¡ d S )Nz;The behavior of Series.argsort in the presence of NA values©Úmatch)r,   éÿÿÿÿr   r*   )
r$   Úassert_produces_warningÚFutureWarningr!   r"   rT   r
   r2   rU   r%   )r   rX   Úmsgr'   r(   r   r   r   Útest_argsort_missingu   s
    ,z%BaseMethodsTests.test_argsort_missingc                 C   sŽ   |j j}d}d}|rd}d}| ¡ |ks,J ‚| ¡ dks<J ‚| g d¢¡}| ¡ |ksZJ ‚| ¡ dksjJ ‚| ¡ dkszJ ‚| ¡ dksŠJ ‚d S )Nr,   é   r   rS   )rS   r   r   r,   r,   rS   )r	   Ú_is_booleanÚargmaxÚargminÚtake)r   rV   rX   Úna_valueÚis_boolZ
exp_argmaxZexp_argmax_repeatedr   r   r   r   Útest_argmin_argmax|   s    z#BaseMethodsTests.test_argmin_argmaxÚmethodrc   rd   c                 C   sJ   d}t jt|d$ t|d d… |ƒƒ  W d   ƒ n1 s<0    Y  d S )Núattempt to getrZ   r   )r   ÚraisesÚ
ValueErrorr5   )r   ri   r   Úerr_msgr   r   r   Útest_argmin_argmax_empty_array•   s    z/BaseMethodsTests.test_argmin_argmax_empty_arrayc                 C   sZ   d}t |ƒj||g|jd}tjt|d t||ƒƒ  W d   ƒ n1 sL0    Y  d S )Nrj   r*   rZ   )r   Ú_from_sequencer	   r   rk   rl   r5   )r   ri   r   rf   rm   Údata_nar   r   r   Útest_argmin_argmax_all_naœ   s    z*BaseMethodsTests.test_argmin_argmax_all_nazop_name, skipna, expected)ÚidxmaxTr   )ÚidxminTrS   )rc   Tr   )rd   TrS   rr   rs   )rc   Fr\   )rd   Fr\   c           	      C   s˜   d }d}|  d¡r|dkrt}|  d¡r@t |¡r@t}d|› }t |¡}tj||d  t||ƒ|d}W d   ƒ n1 s~0    Y  t 	||¡ d S )Nz$The behavior of Series.argmax/argminÚargr\   ÚidxzThe behavior of Series.rZ   ©Úskipna)
Ú
startswithr^   r
   Úisnanr!   r"   r$   r]   r5   Zassert_almost_equal)	r   rX   Zop_namerw   r(   Úwarnr_   r7   r'   r   r   r   Útest_argreduce_series¤   s    

.z&BaseMethodsTests.test_argreduce_seriesc                 C   s|   |}t jtdd |jdd W d   ƒ n1 s40    Y  t jtdd |jdd W d   ƒ n1 sn0    Y  d S )Nr/   rZ   Frv   )r   rk   ÚNotImplementedErrorrd   rc   )r   rX   r   r   r   r   Ú+test_argmax_argmin_no_skipna_notimplementedÁ   s
    *z<BaseMethodsTests.test_argmax_argmin_no_skipna_notimplementedzna_position, expectedÚlastrR   rU   r*   Úfirst©r,   rS   r   c                 C   s   t ||d}t ||¡ d S )N)Úna_position)r   r$   rO   )r   rX   r   r(   r'   r   r   r   Útest_nargsortË   s    	zBaseMethodsTests.test_nargsortÚ	ascendingc                 C   sd   t  |¡}|j||d}|jg d¢ }|sT| ¡ dkrF|jg d¢ }n|jg d¢ }t ||¡ d S )N©rƒ   ÚkeyrR   rS   )r   r,   rS   )r,   r   rS   )r!   r"   Úsort_valuesÚilocZnuniquer$   r%   )r   rV   rƒ   Úsort_by_keyr7   r'   r(   r   r   r   Útest_sort_values×   s    
z!BaseMethodsTests.test_sort_valuesc                 C   sJ   t  |¡}|j||d}|r,|jg d¢ }n|jg d¢ }t ||¡ d S )Nr„   rR   )r   rS   r,   )r!   r"   r†   r‡   r$   r%   )r   rX   rƒ   rˆ   r7   r'   r(   r   r   r   Útest_sort_values_missingå   s    
z)BaseMethodsTests.test_sort_values_missingc                 C   sX   t  g d¢|dœ¡}| ddg¡}t jg d¢| g d¢¡dœg d¢d}t ||¡ d S )N)r,   rS   r,   ©r9   ÚBr9   rŒ   )r,   r,   rS   rR   ©r-   )r!   r=   r†   re   r$   Úassert_frame_equal)r   rV   rƒ   r@   r'   r(   r   r   r   Útest_sort_values_frameñ   s    ÿz'BaseMethodsTests.test_sort_values_frameÚboxc                 C   s   | S rC   r   rJ   r   r   r   rL   ú   rM   zBaseMethodsTests.<lambda>c                 C   s   |   ¡ S rC   )r1   rJ   r   r   r   rL   û   rM   c                 C   s\   ||  |d |d g¡ƒ}||ƒ}t|ƒdks2J ‚t|t|ƒƒsDJ ‚|d |d ksXJ ‚d S ©Nr   r,   )ro   r4   r3   r   )r   r   r   ri   Z
duplicatedr'   r   r   r   Útest_uniqueú   s
    zBaseMethodsTests.test_uniquec                 C   s€   t j|dd\}}|jj}|rBtjg d¢tjd}| ddg¡}n"tjg d¢tjd}| g d¢¡}t 	||¡ t 
||¡ d S )	NT©Zuse_na_sentinel)r   r   r\   r\   r,   r,   r   r   r*   r   é   )r   r   r\   r\   r,   r,   r   rS   )r   r”   é   )r!   Ú	factorizer	   rb   r
   r2   rU   re   r$   rO   Úassert_extension_array_equal)r   Údata_for_groupingÚcodesÚuniquesrg   Úexpected_codesÚexpected_uniquesr   r   r   Útest_factorize  s    zBaseMethodsTests.test_factorizec                 C   sh   t j|dd\}}|jdd\}}t ||¡ t ||¡ t|ƒtt  |¡ƒksTJ ‚|j|jksdJ ‚d S )NTr“   )r!   r–   r$   rO   r—   r4   r1   r	   )r   r˜   Zcodes_1Z	uniques_1Zcodes_2Z	uniques_2r   r   r   Útest_factorize_equivalence  s    z+BaseMethodsTests.test_factorize_equivalencec                 C   s^   t  |d d… ¡\}}tjg tjd}t|ƒjg |d d… jd}t 	||¡ t 
||¡ d S )Nr   r*   )r!   r–   r
   r2   rU   r   ro   r	   r$   rO   r—   )r   r   r™   rš   r›   rœ   r   r   r   Útest_factorize_empty  s
    z%BaseMethodsTests.test_factorize_emptyc                 C   sR   |  ddg¡}t d|i¡}| ¡ }|jd }| |¡}||jd< t ||¡ d S )Nr,   r9   )r   r   )re   r!   r=   Úcopyr‡   Úfillnar$   rŽ   )r   r?   Úarrr@   Zdf_origÚ
filled_valr'   r   r   r   Útest_fillna_copy_frame%  s    


z'BaseMethodsTests.test_fillna_copy_framec                 C   sP   |  ddg¡}tj|dd}| ¡ }|d }| |¡}||jd< t ||¡ d S )Nr,   F)r    r   )re   r!   r"   r    r¡   r‡   r$   r%   )r   r?   r¢   r7   Zser_origr£   r'   r   r   r   Útest_fillna_copy_series1  s    

z(BaseMethodsTests.test_fillna_copy_seriesc                 C   sH   d}t jt|d" | | dg¡¡ W d   ƒ n1 s:0    Y  d S )Nz!Length of 'value' does not match.rZ   r,   )r   rk   rl   r¡   re   )r   r?   r_   r   r   r   Útest_fillna_length_mismatch<  s    z,BaseMethodsTests.test_fillna_length_mismatchÚ_combine_le_expected_dtypec                    s°   |dƒ\}}t  |¡}t  |¡}| |dd„ ¡}t jdd„ tt|ƒt|ƒƒD ƒ| jd}t ||¡ |jd ‰ | ˆ dd„ ¡}t j‡ fd	d„t|ƒD ƒ| jd}t ||¡ d S )
NrS   c                 S   s   | |kS rC   r   ©Úx1Zx2r   r   r   rL   J  rM   z2BaseMethodsTests.test_combine_le.<locals>.<lambda>c                 S   s   g | ]\}}||k‘qS r   r   ©Ú.0ÚaÚbr   r   r   Ú
<listcomp>L  rM   z4BaseMethodsTests.test_combine_le.<locals>.<listcomp>r*   r   c                 S   s   | |kS rC   r   r¨   r   r   r   rL   R  rM   c                    s   g | ]}|ˆ k‘qS r   r   ©r«   r¬   ©Úvalr   r   r®   T  rM   )	r!   r"   ÚcombineÚzipÚlistr§   r$   r%   r‡   )r   Údata_repeatedÚ
orig_data1Ú
orig_data2Ús1Ús2r'   r(   r   r°   r   Útest_combine_leD  s     

þ
þz BaseMethodsTests.test_combine_lec                    s0  |dƒ\}}t  |¡}t  |¡}zXtjdd8 t  | dd„ tt|ƒt|ƒƒD ƒ¡¡}W d   ƒ n1 sl0    Y  W nN tyÆ   t 	t¡  | 
|dd„ ¡ W d   ƒ n1 s¶0    Y  Y d S 0 | 
|dd„ ¡}t ||¡ |jd	 ‰ | 
ˆ d
d„ ¡}t  | ‡ fdd„t|ƒD ƒ¡¡}t ||¡ d S )NrS   rI   )Zoverc                 S   s   g | ]\}}|| ‘qS r   r   rª   r   r   r   r®   e  rM   z5BaseMethodsTests.test_combine_add.<locals>.<listcomp>c                 S   s   | | S rC   r   r¨   r   r   r   rL   l  rM   z3BaseMethodsTests.test_combine_add.<locals>.<lambda>c                 S   s   | | S rC   r   r¨   r   r   r   rL   o  rM   r   c                 S   s   | | S rC   r   r¨   r   r   r   rL   s  rM   c                    s   g | ]}|ˆ  ‘qS r   r   r¯   r°   r   r   r®   u  rM   )r!   r"   r
   Zerrstatero   r³   r´   Ú	TypeErrorr   rk   r²   r$   r%   r‡   )r   rµ   r¶   r·   r¸   r¹   r(   r'   r   r°   r   Útest_combine_addY  s,    

ÿÿ&.
ÿz!BaseMethodsTests.test_combine_addc                 C   sX   t  |d d… ¡}t j|dd… g d¢d}| |¡}t  |d d… ¡}t ||¡ d S )Nra   rS   é   )rS   ra   r”   r   )r!   r"   Zcombine_firstr$   r%   )r   r   r¬   r­   r'   r(   r   r   r   Útest_combine_firsty  s
    
z#BaseMethodsTests.test_combine_firstÚframezperiods, indiceséþÿÿÿ)rS   ra   r”   r\   r\   r   )r   r,   rS   ra   r”   rS   )r\   r\   r   r,   rS   c           	      C   sž   |d d… }t j|dd}t j|j|dddd}|r€|jddjdd |¡}t j|t jdgd dd |¡gdd	}tj}n| |¡}tj	}|||ƒ d S )
Nr½   r9   ©r.   T©Z
allow_fillr,   )rŒ   rŒ   r;   )
r!   r"   re   Úto_frameZassignÚshiftÚconcatr$   rŽ   r%   )	r   r   r¿   ÚperiodsÚindicesÚsubsetr(   r'   Úcomparer   r   r   Útest_container_shift  s    ÿ
z%BaseMethodsTests.test_container_shiftc                 C   sB   |  d¡}|d |d ksJ ‚|d |d< |d |d ks>J ‚d S r‘   ©rÄ   rF   r   r   r   Útest_shift_0_periods˜  s    
z%BaseMethodsTests.test_shift_0_periodsrÆ   r,   c           	      C   sü   |d d… }t |jƒrtj}ntj}z|||ƒ W n& tyX   t t|ƒ› d¡ Y n0 t	 
|¡}| |¡}t	 
||| |¡ƒ¡}t ||¡ t	 |dgd dœ¡}| |¡}|dkrÊtjddddg}ndddtjtjg}t	 ||dœ¡}t ||¡ d S )Nr½   z does not support diffg      ð?r‹   r,   r   )r   r	   ÚoperatorÚxorÚsubÚ	Exceptionr   r   r   r!   r"   ÚdiffrÄ   r$   r%   r=   r
   ÚnanrŽ   )	r   r   rÆ   ÚopÚsr'   r(   r@   r­   r   r   r   Ú	test_diffŸ  s&    



zBaseMethodsTests.test_difféüÿÿÿr\   r”   c                 C   s4   |d d… }|  |¡}|j|dd}t ||¡ d S )NrS   TrÂ   ©rÄ   re   r$   r—   )r   r   rÆ   rÇ   rÈ   r'   r(   r   r   r   Útest_shift_non_empty_array¹  s    
z+BaseMethodsTests.test_shift_non_empty_array)rÖ   r\   r   r,   r”   c                 C   s*   |d d… }|  |¡}|}t ||¡ d S )Nr   )rÄ   r$   r—   )r   r   rÆ   Úemptyr'   r(   r   r   r   Útest_shift_empty_arrayÄ  s    
z'BaseMethodsTests.test_shift_empty_arrayc                 C   s8   |  d¡}||usJ ‚|d d…   d¡}||us4J ‚d S )Nr   rS   rË   rF   r   r   r   Útest_shift_zero_copiesÌ  s    
z'BaseMethodsTests.test_shift_zero_copiesc                 C   sh   |d d… }|d }|j d|d}| g d¢¡}t ||¡ |j d|d}| g d¢¡}t ||¡ d S )Nr”   r   r,   )Ú
fill_value)r   r   r,   rS   rÀ   )rS   ra   r   r   r×   )r   r   r¢   rÜ   r'   r(   r   r   r   Útest_shift_fill_valueÔ  s    z&BaseMethodsTests.test_shift_fill_valuec                 C   s:   t jtdd t|ƒ W d   ƒ n1 s,0    Y  d S )Nzunhashable typerZ   )r   rk   r»   Úhash©r   r   r   r   r   Útest_not_hashableß  s    z"BaseMethodsTests.test_not_hashablec                 C   s>   t  |¡}|r| ¡ }t j |¡}t j |¡}t ||¡ d S rC   )r!   r"   rÃ   ÚutilZhash_pandas_objectr$   Úassert_equal)r   r   Úas_framer¬   r­   r   r   r   Útest_hash_pandas_object_worksä  s    
z.BaseMethodsTests.test_hash_pandas_object_worksc           
      C   s  |j jr|  ||¡S |\}}}| g d¢¡}|r:t |¡}| |¡dksLJ ‚|j|dddksbJ ‚| |¡dkstJ ‚|j|dddksŠJ ‚| |¡dksœJ ‚|j|dddks²J ‚| | ddg¡¡}tjddgtj	d}t
 ||¡ t g d	¢¡}	|j||	d
dksJ ‚d S )NrR   r   Úright©Zsider,   rS   ra   r*   r€   ©Úsorter)r	   rb   Ú_test_searchsorted_bool_dtypesre   r!   r"   Úsearchsortedr
   r2   rU   r$   rO   )
r   rV   Ú	as_seriesr­   Úcr¬   r¢   r'   r(   rè   r   r   r   Útest_searchsortedí  s"    

z"BaseMethodsTests.test_searchsortedc           
      C   sì   |j }tjddg|d}|\}}t|ƒ ||g¡}|r@t |¡}| |¡dksRJ ‚|j|dddkshJ ‚| |¡dkszJ ‚|j|dddksJ ‚| | ddg¡¡}tjddgtj	d}t
 ||¡ t ddg¡}	|j||	d	dksèJ ‚d S )
NTFr*   r   rå   ræ   r,   rS   rç   )r	   r!   r2   r   ro   r"   rê   re   r
   rU   r$   rO   )
r   rV   rë   r	   r­   r¬   r¢   r'   r(   rè   r   r   r   ré     s    
z/BaseMethodsTests._test_searchsorted_bool_dtypesc                 C   s¦  |d |d ksJ ‚t |ƒ}|d d… \}}t |j||||g|jd¡}| ¡ }t g d¢¡}	|r||jdd}|	 	dd¡}	| 
|	¡}
t |j||||g|jd¡}|r´|jdd}t |
|¡ |j|	 d	d
 t ||¡ | ¡ }|rô|jdd}t g d¢¡}	|j||||g|jd}|r<t d|i¡}t d|	i¡}	| 
|	|¡}
t |j||||g|jd¡}|rx|jdd}t |
|¡ |j|	 |d	d
 t ||¡ d S )Nr   r,   rS   r*   )TTFFr¬   rÁ   r\   T)Zinplace)TFTT)r   r!   r"   ro   r	   r    r
   r2   rÃ   ZreshapeÚwherer$   râ   Úmaskr=   )r   r   rf   rã   Úclsr¬   r­   Úorigr7   Zcondr'   r(   r&   r   r   r   Útest_where_series"  sB    
ÿz"BaseMethodsTests.test_where_seriesÚrepeats)r,   rS   ra   c                 C   s®   t |ƒj|d d… |jd}|r*t |¡}|r:t ||¡n| |¡}t|tƒrX|gd n|}dd„ t	||ƒD ƒ}t |ƒj||jd}|ržtj||j
 |¡d}t ||¡ d S )Nra   r*   c                 S   s"   g | ]\}}t |ƒD ]}|‘qqS r   )Úrange)r«   rK   ÚnÚ_r   r   r   r®   V  rM   z0BaseMethodsTests.test_repeat.<locals>.<listcomp>r   )r   ro   r	   r!   r"   r
   Úrepeatr3   Úintr³   r-   r$   râ   )r   r   ró   rë   Ú	use_numpyr¢   r'   r(   r   r   r   Útest_repeatM  s    
zBaseMethodsTests.test_repeatzrepeats, kwargs, error, msgr<   Únegativer   ZfooÚbarz'foo'c                 C   s^   t j||d< |r*tj||fi |¤Ž n|j|fi |¤Ž W d   ƒ n1 sP0    Y  d S )NrZ   )r   rk   r
   r÷   )r   r   ró   ÚkwargsÚerrorr_   rù   r   r   r   Útest_repeat_raises]  s    
z#BaseMethodsTests.test_repeat_raisesc                 C   sd   |  d¡}|dd … }t ||¡ |  ddg¡}| |dg |dg |dd … g¡}t ||¡ d S )Nr   r,   ra   rS   r”   )Údeleter$   r—   Z_concat_same_type)r   r   r'   r(   r   r   r   Útest_deletem  s    
$zBaseMethodsTests.test_deletec                 C   sº   |dd …   d|d ¡}t ||¡ |dd …   t|dd … ƒ |d ¡}t ||¡ |d d…   d|d ¡}t t|ƒ¡}|dd… |dd …< t|ƒd |d< | |¡}t ||¡ d S )Nr,   r   r\   r”   r½   )Úinsertr$   r—   r4   r
   Zarangere   )r   r   r'   Ztakerr(   r   r   r   Útest_insertv  s    &
zBaseMethodsTests.test_insertc                 C   s¾   |}t  ttf¡ | d|¡ W d   ƒ n1 s40    Y  t  ttf¡ | d|¡ W d   ƒ n1 sn0    Y  t  ttf¡$ | t|ƒd |¡ W d   ƒ n1 s°0    Y  d S )Nr   r”   r,   )r   rk   r»   rl   r  r4   )r   r   Zinvalid_scalarÚitemr   r   r   Útest_insert_invalid‡  s    **z$BaseMethodsTests.test_insert_invalidc                 C   sÄ   t |ƒ}t t¡$ | |d |d ¡ W d   ƒ n1 s<0    Y  t t¡& | | d |d ¡ W d   ƒ n1 s|0    Y  t t¡  | d|d ¡ W d   ƒ n1 s¶0    Y  d S )Nr,   r   g      ø?)r4   r   rk   Ú
IndexErrorr  r»   )r   r   Zubr   r   r   Útest_insert_invalid_loc“  s    24z(BaseMethodsTests.test_insert_invalid_locc                 C   s8  t |ƒj|d gt|ƒ |jd}t |ƒj|gt|ƒ |jd}tj||dd}tj||dd}tj||dd}| |¡du s‚J ‚| | ¡ ¡du s˜J ‚| |¡du sªJ ‚| |¡du s¼J ‚|d d…  |d d… ¡du sÞJ ‚|d d…  |d d… ¡du sJ ‚| d ¡du sJ ‚|dg  |d ¡du s4J ‚d S )Nr   r*   F)Z	transposeTrS   ra   )r   ro   r4   r	   r$   Zbox_expectedÚequalsr    )r   r   rf   rë   r   Zdata2rp   r   r   r   Útest_equals   s    ""$zBaseMethodsTests.test_equalsc                 C   s   t  |¡ t  |¡¡sJ ‚d S rC   )r!   r"   r  rß   r   r   r   Ú&test_equals_same_data_different_object½  s    z7BaseMethodsTests.test_equals_same_data_different_object)GÚ__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   ÚmarkZparametrizer)   r8   rA   rB   rG   rP   rW   rY   r`   rh   rn   rq   r
   rÒ   r{   r}   r2   r	   r‚   r‰   rŠ   r   r!   r"   r1   r’   r   rž   rŸ   r¤   r¥   r¦   Úboolr§   r   Ú__annotations__rº   r¼   r¾   rÊ   rÌ   rÕ   rØ   rÚ   rÛ   rÝ   rà   rä   rí   ré   rò   rú   rl   r»   rÿ   r  r  r  r  r=   r	  r
  r   r   r   r   r      sÈ   






øþ

þþ



		  þ
4þ

	+

üþ	
	
r   )r   rÍ   Únumpyr
   r   Zpandas._typingr   Zpandas.core.dtypes.commonr   Zpandas.core.dtypes.missingr   Zpandasr!   Zpandas._testingZ_testingr$   Zpandas.core.sortingr   r   r   r   r   r   Ú<module>   s   