
    Pib                       d dl mZ d dlm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mZ d dlmZ d dlZd dlmZmZmZmZmZmZmZmZmZmZmZmZmZ d dlm Z! d dl"m#c m$Z% d d	l&m'Z'  G d
 d          Z( G d d          Z)dS )    )annotations)datetimeN)	Timestamp)Pandas4Warning)is_integer_dtypeis_numeric_dtype)CategoricalDtype)CategoricalIndexDatetimeIndexDatetimeTZDtypeIndexIntervalIndex
MultiIndexPeriodIndex
RangeIndexSeriesStringDtypeTimedeltaIndexisnaperiod_range)BaseMaskedArrayc                     e Zd Z ej         eddd           e ej        dej	                             e ej        dej
                             e ej        dej                             e eddd          ej                   e eddd          ej                   e eddd          ej                   e eddd          ej                   e ed                     eg d           ed	dd
           eg ddd
           eg ddd
           ej         ed          d          g          d             Zd Zd Zd Zd Zd Zd Zd Zd Zej         !                    d          d             Z"d  Z#d! Z$d" Z%d# Z&d$ Z'd% Z(d& Z)d' Z*d( Z+d) Z,ej         !                    d          d*             Z-d+ Z.d, Z/d- Z0d. Z1d/ Z2d0 Z3ej         4                    d1d2 d3 g          ej         !                    d          d4                         Z5d5 Z6ej         4                    d6d7d8g          ej         4                    d9d:d;g          ej         4                    d<d7d8g          d=                                     Z7d> Z8ej         j9        d?             Z:d@ Z;dA Z<dB Z=dC Z>dD Z?dE Z@d:S )FTestBaser         startstopstep   dtypeabcde)r   a   br   c20130101D)periodsfreq)z0 days 01:00:00z1 days 01:00:00z2 days 01:00:00z3 days 01:00:00z4 days 01:00:00ztimedelta64[ns])r"   r+   )z
2013-01-01z
2013-01-02z
2013-01-03z
2013-01-04z
2013-01-05zdatetime64[ns]   right)closedparamsc                    |j         S Nparamselfrequests     v/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/indexes/test_old_base.pysimple_indexzTestBase.simple_index(   s    B }    c                   t          |t                    rt          j        d           d                    g d          }t          j        t          |          5   t          |                       d d d            d S # 1 swxY w Y   d S )Nz#RangeIndex() is a valid constructor|)zNIndex\(\.\.\.\) must be called with a collection of some kind, None was passedzPDatetimeIndex\(\) must be called with a collection of some kind, None was passedzQTimedeltaIndex\(\) must be called with a collection of some kind, None was passedz:__new__\(\) missing 1 required positional argument: 'data'z2__new__\(\) takes at least 2 arguments \(1 given\)z!'NoneType' object is not iterablematch)
isinstancer   pytestskipjoinraises	TypeErrortype)r6   r9   msgs      r8   test_pickle_compat_constructionz(TestBase.test_pickle_compat_constructionK   s    lJ// 	?K=>>>hh
 
 

 
 ]9C000 	! 	!D   	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	!s   BBBc                   t          |t          t          t          f          rt	          j        d           |}dt          |          j         }t	          j        t          |          5  |
                    d           d d d            n# 1 swxY w Y   t	          j        t          |          5  |
                    dd           d d d            d S # 1 swxY w Y   d S )Nz"Tested in test_ops/test_arithmeticz\This method is only implemented for DatetimeIndex, PeriodIndex and TimedeltaIndex; Got type r=   r%   r   )r?   r   r   r   r@   rA   rE   __name__rC   NotImplementedErrorshiftr6   r9   idxrF   s       r8   
test_shiftzTestBase.test_shift_   sX   l]NK$PQQ 	>K<====(,S		(:= = 	 ].c::: 	 	IIaLLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	].c::: 	 	IIaOOO	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s$   +BBB3CCCc                    |}t          j        t          d          5   t          |          |g            d d d            d S # 1 swxY w Y   d S )Nz"Index.name must be a hashable typer=   name)r@   rC   rD   rE   r6   r9   rM   s      r8    test_constructor_name_unhashablez)TestBase.test_constructor_name_unhashablem   s     ]9,PQQQ 	$ 	$DIIc####	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$s   AA
A
c           	     >   |                                 }t          |t                    sZd|_        t	          |          }t          j        ||           t	          |d          }d|_        t          j        ||           d S ddg|_        t	          |          }t          j        |t	          t	          g dd          ddg                     t	          |dd	g          }t          j        |t	          t	          g dd          dd	g                     d S )
NfoobarrP   ))rU   one)rU   two)rV   rW   )bazrX   )quxrW   )rZ   rX   objectr!   )namesAB)copyr?   r   rQ   r   tmassert_index_equalr\   )r6   r9   expectedresults       r8   test_create_index_existing_namez(TestBase.test_create_index_existing_namet   sh     $$&&(J// .	!HM8__F!&(3338%000F!HM!&(33333#U^HN8__F!   '
 
 
 !%.    $ 8C:666F!   '
 
 
 *      r:   c                :   |}t          |t                    rJ t          |          t          u rt	          j        d           t          |j                  st          |t                    rt	          j        d           t          |j	                  j
        }t          |          j
        }d                    d| dd| d| dg          }t	          j        t          |          5  |d	z   d d d            n# 1 swxY w Y   d                    d
| dd| d| dg          }t	          j        t          |          5  d	|z   d d d            n# 1 swxY w Y   |                    dd          }t	          j        t          |          5  |d	z   d d d            n# 1 swxY w Y   |                    dd          }t	          j        t          |          5  d	|z   d d d            n# 1 swxY w Y   |                    dd          }t	          j        t          |          5  |d	z   d d d            n# 1 swxY w Y   |                    dd          }t	          j        t          |          5  d	|z   d d d            d S # 1 swxY w Y   d S )NzNot applicable for IndexTested elsewhere.r<   z'unsupported operand type\(s\) for \*: 'z' and 'int'zIcannot perform (__mul__|__truediv__|__floordiv__) with this index type: ()r=   r%   z1unsupported operand type\(s\) for \*: 'int' and ''zLcannot perform (__rmul__|__rtruediv__|__rfloordiv__) with this index type: (*/z//)r?   r   rE   r   r@   rA   r   r"   r   _datarI   rB   rC   rD   replace)	r6   r9   rM   typclslmsgrmsgdiv_errfloordiv_errs	            r8   test_numeric_compatzTestBase.test_numeric_compat   sD    c:.....99K2333L.// 	-:.4
 4
 	- K+,,,39oo&3ii xxK3KKK2%(2 2+.2 2 2
 
 ]9D111 	 	!GG	 	 	 	 	 	 	 	 	 	 	 	 	 	 	xxKSKKK2%(2 2+.2 2 2
 
 ]9D111 	 	GG	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ,,sC((]9G444 	 	!GG	 	 	 	 	 	 	 	 	 	 	 	 	 	 	,,sC((]9G444 	 	GG	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ||C..]9L999 	 	1HH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	||C..]9L999 	 	HH	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	sl   +C==DDEEEF%%F),F)!G33G7:G7/III=JJJc                P   |j         t          dfv rt          j        d           |}|j         j        dv r|                                |j                                        k    sJ |                                |                                                                k    sJ |                                |j                                        k    sJ |                                |                                                                k    sJ d S d}t          j	        t          |          5  |                                 d d d            n# 1 swxY w Y   t          j	        t          |          5  |                                 d d d            d S # 1 swxY w Y   d S )Nstringrf   iufcbmz&does not support operation '(any|all)'r=   )r"   r[   r@   rA   kindall_values	to_seriesanyrC   rD   rL   s       r8   test_logical_compatzTestBase.test_logical_compat   s   &(!333K+,,,9>X%%7799 1 111117799 3 3 5 555557799 1 111117799 3 3 5 5555555:Cy444  			              y444  			                 s$   2EEE9FF"Fc                    t          |t                    r)t          j        dt	          |          j                    |}t          j        t          t          |                    |           d S )NNot a valid repr for )
r?   r   r@   rA   rE   rI   r`   ra   evalreprrR   s      r8   test_repr_roundtripzTestBase.test_repr_roundtrip   sc    lM22 	OKM\0B0B0KMMNNN
d499oos33333r:   c                R   t          |t                    r)t          j        dt	          |          j                    |}|                    d          }t          j        dd           5  t          |           dt          |          vsJ 	 d d d            d S # 1 swxY w Y   d S )Nr~   2   zdisplay.max_seq_itemsz...)r?   r   r@   rA   rE   rI   repeatpdoption_contextr   strrR   s      r8   test_repr_max_seq_item_settingz'TestBase.test_repr_max_seq_item_setting   s    lM22 	OKM\0B0B0KMMNNNjjnn6== 	) 	)IIIC(((((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   +#BB #B z3ignore:PeriodDtype\[B\] is deprecated:FutureWarningc                   i }t          |t                    r|j        |d<   nZt          |t          t          t
          f          rt          j        d           n#|j        t          k    r|j
        dv r
|j        |d<   t          |          } ||j        fddi|}t          |j        t                    r-|                    d                              |j                  }t          |t"          t$          f          r|                    d           }t)          j        ||           t          |t                    r7 |j        dd|j        i|}t)          j        |j        |j        d	
           d S t          |t2                    rd S t          |          t4          u rt          |j        t6          j                  s ||j        fddi|}t)          j        ||           t          |j        t:                    rt7          j        |j        j        |j        j                  sJ t)          j        |j        j        |j        j        d	
           t7          j        |j        j         |j        j                   sJ t)          j        |j        j         |j        j         d	
           d S t          |j        tB                    rh|j        j"        dk    rXt7          j        |j        j#        |j        j#                  sJ t)          j        |j        j#        |j        j#        d	
           d S t          |j        tB                    r3|j        j"        dk    r#t)          j        |j        |j                  sJ d S tI          |j                   ||j        fddi|}t)          j        |j        |j        d	
           d S )Nr+   zaRangeIndex cannot be initialized from data, MultiIndex and CategoricalIndex are tested separately)booleanru   r"   r_   TUTCordinalssame)
check_sameFpythonpyarrow )%r?   r   r+   r   r   r
   r@   rA   r"   r[   inferred_typerE   valuesr   tz_localize
tz_converttzr   r   
_with_freqr`   ra   from_ordinalsasi8assert_numpy_array_equalr   r   npry   r   shares_memoryrk   _maskr   storage_ndarrayrJ   )r6   indexinit_kwargs
index_typerc   s        r8   test_ensure_copied_dataz TestBase.test_ensure_copied_data   s    e[)) 		/"'*K
J8HIJJ 	/KH    [F""u':>S'S'S#(;K %[[
ELCCtC{CCek?33 	D''..99%(CCFem^<== 	+$$T**E
eV,,,e[)) $	X-Z-QQuzQ[QQF'
FKFSSSSSS}--  	XD%[[E!!*U["(*K*K!ZHH5HKHHF!&%000%-99 7'(;V^=QRRRRR+M')=&    '(;V^=QRRRRR+M')=&      5;4479>9LPX9X9X'(>@WXXXXX+M*FN,CPV      5;447K'944'FFFFFFF)%+666ZHH5HKHHF'fmPVWWWWWWr:   c                   |j                                          |                                }|j        r
|dk    sJ d S |                    |d                    |                                }|                    d          }t          |t          t          f          s=t          |          t          u rt          |j
        t          j
                  r||k    sJ |j        dk    r||k    sJ d S d S )Nr   Tdeepr[   )_engineclear_mappingmemory_usageemptyget_locr?   r   r   rE   r   r"   r   r   )r6   r   rc   result2result3s        r8   test_memory_usagezTestBase.test_memory_usage6  s    ##%%%##%%; 	Q;;;;F 	eAh$$&&$$$$//
 %*m!<== 	$KK5  EK)J)J V####(**W$$$$ +*$$r:   c                R   |j                                          d|j         vsJ |                                }d|j         vsJ |j        }d|j         v sJ |                                }||k    sJ t	          |          dk    r|dk    sJ |dk    sJ d S |dk    sJ |dk    sJ d S )Nr   r   )_cacheclearr   r   len)r6   r   res_without_engine_res_with_engines        r8   'test_memory_usage_doesnt_trigger_enginez0TestBase.test_memory_usage_doesnt_trigger_engineN  s    ,,,,"//11,,,, MEL((((,,.. "44444u::??%****"a''''''%))))"Q&&&&&&r:   c                $   t          |t                    r)t          j        t	          |           j         d           |                                }t          j        |                                          }t          j
        ||d           d S )Nz separately testedF)check_dtype)r?   r
   r@   rA   rE   rI   argsortr   arrayr`   r   )r6   r   rc   rb   s       r8   test_argsortzTestBase.test_argsortf  s|    e-.. 	DK4::.BBBCCC8E??**,,
#FH%HHHHHHr:   c                l   t          j        |          }|                                }t          j        ||           t          j        |d          }|                    d          }t          j        ||           t	          |t
          t          f          rd}t          j        t          |          5  t          j        |d           d d d            n# 1 swxY w Y   d}t          j        t          |          5  t          j        |d	           d d d            d S # 1 swxY w Y   d S d S )
N	mergesort)rw   %the 'axis' parameter is not supportedr=   r%   axisz&the 'order' parameter is not supported)r$   r&   )order)
r   r   r`   r   r?   r
   r   r@   rC   
ValueError)r6   r   rc   rb   rF   s        r8   test_numpy_argsortzTestBase.test_numpy_argsortn  s   E""==??
#FH555E444==k=22
#FH555 e.
;<< 	49Cz555 * *
5q))))* * * * * * * * * * * * * * * ;Cz555 4 4
5
33334 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4	4 	4s$   8CC"CD''D+.D+c                   d}|                                 }|j        } ||j                            |          |j                  }t          j        |                    |          |           |}t          j        t          |                    } ||j                            |          |j                  }t          j        |                    |          |           d S )Nr   rP   )
r_   _constructorr   r   rQ   r`   ra   r   aranger   )r6   r9   reprM   new_index_clsrb   s         r8   test_repeatzTestBase.test_repeat  s    !!( =!2!23!7!7chGGG
cjjoox888iC!! =!2!23!7!7chGGG
cjjoox88888r:   c                "   d}|}|                     |          }t          j        t          j         ||          |           d}t	          j        t          |          5  t          j         ||d           d d d            d S # 1 swxY w Y   d S )Nr   r   r=   r   r   )r   r`   ra   r   r@   rC   r   )r6   r9   r   rM   rb   rF   s         r8   test_numpy_repeatzTestBase.test_numpy_repeat  s    ::c??
biS118<<<5]:S111 	( 	(Ic3Q''''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(s   BBBc                   t          |t          t          f          st          |j                  rt          j        d           |}|}t          |t          t          f          r|	                    d           }dgt          |          z  }|                     ||                    }|}t          j        ||           dgdgt          |dd                    z  z   }t          |j        g|dd                                          |j                  }|                     ||                    }t          j        ||           d S )Nrf   TFr%   r!   )r?   r   r   r   r"   r@   rA   r   r   r   r   wherer`   ra   r   	_na_valuetolist)r6   listlike_boxr9   klassrM   condrc   rb   s           r8   
test_wherezTestBase.test_where  s>   l]K$@AA 	-EUF
 F
 	- K+,,,cM>:;; 	'..&&CvC 55;;''
fh///w$#c!""g,,..#-;#abb'..*:*:;39MMM55;;''
fh/////r:   c                    |dd         }t          |          st          j        d           |                    d|d                   }|dd                             |          sJ d S )Nr%      Not applicable for empty indexr   )r   r@   rA   insertequals)r6   r   trimmedrc   s       r8   test_insert_basezTestBase.test_insert_base  sm    !*5zz 	:K899958,,QqSz  (((((((r:   c                   t          |          dk    rt          }nt          }t          |          dk    rd}nd}|r@t          |j                  dv rd}n'|j        dk    rt          |          dk    r	d}t          }t          j        ||          5  |                    dd	           d d d            n# 1 swxY w Y   d
                    ddg          }t          j        t          |          5  |                    t          |          dz   d           d d d            n# 1 swxY w Y   t          j        t          |          5  |                    t          |           dz
  d           d d d            d S # 1 swxY w Y   d S )Nr   z5index (0|0.5) is out of bounds for axis 0 with size 0zBslice indices must be integers or None or have an __index__ method>   r   ru   categoryzloc must be an integer betweenr[   r=   g      ?rU   r<   z5index -?\d+ is out of bounds for axis 0 with size \d+r%   )	r   rD   
IndexErrorr   r"   r@   rC   r   rB   )r6   r   using_infer_stringerrrF   s        r8   test_insert_out_of_boundsz"TestBase.test_insert_out_of_bounds  sG    u::>>CCCu::??ICCVC 	 5;#@@@6((SZZ1__6]3c*** 	% 	%LLe$$$	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% hhH0
 
 ]:S111 	, 	,LLUa+++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, ]:S111 	- 	-LL#e**q!,,,	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	-s6   B66B:=B:3'D&&D*-D*(FFFc                   t          |          st          j        d           t          |t                    r)t          j        t          |           j         d           |dd          }|                    d          }|                    |          sJ |j	        |j	        k    sJ |d d         }|                    d          }|                    |          sJ |j	        |j	        k    sJ t          |          }d| d| }t          j
        t          |          5  |                    |           d d d            d S # 1 swxY w Y   d S )	Nr    tested elsewherer%   r   zindex z' is out of bounds for axis 0 with size r=   )r   r@   rA   r?   r   rE   rI   deleter   rQ   rC   r   )r6   r   rb   rc   lengthrF   s         r8   test_delete_basezTestBase.test_delete_base  s   5zz 	:K8999eZ(( 	CK4::.AAABBB9a}}X&&&&&{hm++++":b!!}}X&&&&&{hm++++UNvNNfNN]:S111 	! 	!LL   	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	!s   $EEEc                   t          |t                    r)t          j        t	          |          j         d           t	          |          t          u ot          |j        t          j                   }|	                    |          sJ |	                    |
                                          sJ |s/|	                    |                    t                              sJ |	                    t          |                    rJ |	                    t          j        |                    rJ t          |t                    sF|sDt          |t                    }|	                    |          sJ |	                    |          sJ |j        dk    r$|	                    t#          |                    rJ d S d S )Nr   r!   r%   )r?   r   r@   rA   rE   rI   r   r"   r   r   r_   astyper[   listr   r   nlevelsr   )r6   r   	is_ea_idxsame_valuess       r8   test_equalszTestBase.test_equals  s   e]++ 	DK4;;/BBBCCCKK5(REK1R1R-R	||E"""""||EJJLL))))) 	6<<V 4 455555<<U,,,,,<<00000 %,, 	-Y 	-V444K<<,,,,,%%e,,,,,=A||F5MM22222 22r:   c                   |}t          |          }|dd         }|dd                             |dd                   }|dd         }d}t          j        t          |          5  ||k     d d d            n# 1 swxY w Y   t          j        dg|z            }t          j        dg|dz
  z  dgz             }	t          j        ||k    |           t          j        ||k    |	           t          j        |          }
t          j        |dd                   }t          j        |dd                             |dd                             }t          j        |dd                   }t          j        t          |          5  ||k     d d d            n# 1 swxY w Y   t          j        ||
k    |           t          j        ||k    |	           t          |
          }t          |          }t          |          }t          |          }t          j        t          |          5  ||k     d d d            n# 1 swxY w Y   t          j
        ||k    t          |                     t          j
        ||k    t          |	                     t          j        t          d	          5  ||k     d d d            n# 1 swxY w Y   t          j        t          d	          5  ||k     d d d            n# 1 swxY w Y   t          j        t          d	          5  ||k     d d d            n# 1 swxY w Y   d
}t          j        t          |          5  ||k     d d d            n# 1 swxY w Y   t          j        t          d	          5  ||k     d d d            n# 1 swxY w Y   t          |t                    svt          j        dgt          |          dz
  z  ddgz             }|d         }t          j        ||k    |           t          j
        ||k    t          |                     d S d S )Nr   r   r%   z)Lengths must match|could not be broadcastr=   TFzLengths must matchz3Can only compare identically-labeled Series objectsr   )r   appendr@   rC   r   r   r   r`   r   r   assert_series_equalr?   r   )r6   r9   index_anindex_bindex_cindex_drF   	expected1	expected2array_aarray_barray_carray_dseries_aseries_bseries_cseries_d	expected3items                       r8   test_equals_opzTestBase.test_equals_op  s
   LL!B$-!B$-&&wr"u~66!A#,9]:S111 	 	w	 	 	 	 	 	 	 	 	 	 	 	 	 	 	HdVaZ((	HdVq1u-788	
#Gw$6	BBB
#Gw$6	BBB (7##(71R4=))(71R4=//2??@@(71Q3<((]:S111 	 	w	 	 	 	 	 	 	 	 	 	 	 	 	 	 	
#Gw$6	BBB
#Gw$6	BBB '??'??'??'??]:S111 	  	 x	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	w(2F94E4EFFF
w(2F94E4EFFF ]:-ABBB 	 	w	 	 	 	 	 	 	 	 	 	 	 	 	 	 	]:-ABBB 	  	 x	  	  	  	  	  	  	  	  	  	  	  	  	  	  	 ]:-ABBB 	 	w	 	 	 	 	 	 	 	 	 	 	 	 	 	 	C]:S111 	! 	!  	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	!]:-ABBB 	  	 	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  ':.. 	H%CLL1,<!=u!MNNI2;D'4CCC"8t#3VI5F5FGGGGG	H 	Hs   (A;;A?A?F  F$'F$4III9KKK2LL	L	+L>>MM&M99M= M=N22N69N6c                   t          |          dk    rt          j        d           d S |j        t          k    rt          j        |j         d           d S t          |t                    r2t          |j                  rt          j        d|j                    d S t          |t                    ri|	                    d          }d}t          j
        t          |          5  |                    |d                    d d d            d S # 1 swxY w Y   d S |	                    d          }|                    |d                   }t          j        ||           ||usJ d	}t          j
        t          |          5  |                    |d         g           d d d            n# 1 swxY w Y   |	                    d          }|j        }t"          j        |d
<    t'          |          |          }t#          j        dgt          |          z  t                    }d|d
<   t          j        |j        |           |j        du sJ d S )Nr   zNot relevant for empty indexz cannot hold NAszNot relevant for Index with Tr   z$fillna is not defined for MultiIndexr=   z"'value' must be a scalar, passed: r%   Fr!   )r   r@   rA   r"   boolr?   r   r   r   r_   rC   rJ   fillnar`   ra   rD   ry   r   nanrE   r   r   _isnanhasnans)r6   r   rM   rF   rc   r   rb   s          r8   test_fillnazTestBase.test_fillnaO  s   u::??K677777[D  K5;88899999u%% 	'*:5;*G*G 	'KDu{DDEEEEEz** 	'**$*''C8C2#>>> # #

3q6"""# # # # # # # # # # # # # # # # # # **$*''CZZA''F!&#...$$$$6Cy444 % %

CF8$$$% % % % % % % % % % % % % % % **$*''C[FF1I$u++f%%Cx#c(( 2$???HHQK'
H===;$&&&&&&s$   'DDDF//F36F3c                   t          |          dk    rBt          j        |                                t	          j        g t                               d S t          |t                    r`|	                                }d}t          j        t          |          5  |                                 d d d            d S # 1 swxY w Y   d S |j        st          j        |                                t	          j        t          |          t                               t          j        |                                t	          j        t          |          t                               d S t          |          }t          j        |                                |           t          j        |                                |            d S )Nr   r!   z"isna is not defined for MultiIndexr=   )r   r`   r   r   r   r   r  r?   r   r_   r@   rC   rJ   r	  zerosnotnaones)r6   r   rM   rF   rc   s        r8   
test_nullszTestBase.test_nullsr  s    u::??'

bhr6N6N6NOOOOOz** 	@**,,C6C2#>>>  


                  	@'

bhs5zzQU6V6V6VWWW'rws5zzQU7V7V7VWWWWW%[[F'

f==='w?????s   B>>CCc                >    |}|j         rJ |d d         j         sJ d S Nr   )r   rR   s      r8   
test_emptyzTestBase.test_empty  s/    9}2A2w}}r:   c                    |}|j         rJ|                    ||          }|}|dk    rt          j        |          }t	          j        ||           d S d S )N)howouter)	is_uniquerB   algos	safe_sortr`   ra   )r6   	join_typer9   rM   joinedrb   s         r8   test_join_self_uniquezTestBase.test_join_self_unique  sh    = 	4XXcyX11F#HG## ?844!&(33333	4 	4r:   c                    t          |t          t          f          rt          j        d           |}|                    d           }t          j        ||d           d S )Nrf   c                    | S r2   r   )xs    r8   <lambda>z#TestBase.test_map.<locals>.<lambda>  s    1 r:   equivexact)r?   r   r   r@   rA   mapr`   ra   )r6   r9   rM   rc   s       r8   test_mapzTestBase.test_map  s`    l^[$ABB 	-K+,,,%%
fc999999r:   mapperc                6    d t          | |          D             S )Nc                    i | ]\  }}||	S r   r   ).0eis      r8   
<dictcomp>z%TestBase.<lambda>.<locals>.<dictcomp>  s    "G"G"GDAq1a"G"G"Gr:   )zipr   r   s     r8   r  zTestBase.<lambda>  s    "G"GC4F4F"G"G"G r:   c                "    t          | |          S r2   )r   r-  s     r8   r  zTestBase.<lambda>  s    &"7"7 r:   c                   |}t          |t          t          t          f          rt	          j        d            ||j        |          }|                    |          }t          j	        ||d           d }|j
        j        dk    r|j
        }t          t          j        gt          |          z  |          }|                     |||                    }t          j	        ||           d S )Nrf   r   r!  fr!   )r?   r   r   r   r@   rA   r   r#  r`   ra   r"   rw   r   r   r  r   )	r6   r%  r9   r7   rM   identityrc   r"   rb   s	            r8   test_map_dictlikezTestBase.test_map_dictlike  s     cM>;GHH 	-K+,,,6#*c**""
fc9999 9>S  IE"&CHH,E:::#..//
fh/////r:   c                    t          |t                    rt          j        d           |}|                    t
                    }t          d |D                       }t          j        ||           d S )NzSee test_map.pyc                ,    g | ]}t          |          S r   )r   )r(  r  s     r8   
<listcomp>z)TestBase.test_map_str.<locals>.<listcomp>  s    ...Q#a&&...r:   )	r?   r
   r@   rA   r#  r   r   r`   ra   )r6   r9   rM   rc   rb   s        r8   test_map_strzTestBase.test_map_str  so    l$455 	+K)***..#...//
fh/////r:   r_   TFrQ   NrU   orderedc                *   |}|r|                     |          }t          |          }|                    ||          }t          |||          }t	          j        ||d           t          |                                                                d d         |          }d}	t	          j        t          |	          5  |                    ||          }d d d            n# 1 swxY w Y   t	          j        t          |	          5  t          |||	          }d d d            n# 1 swxY w Y   t	          j        ||d           |d
u rA|                    d|          }t          ||          }t	          j        ||d           d S d S )N)r7  )r_   )rQ   r7  Tr!  r   z=Constructing a Categorical with a dtype and values containingr=   )rQ   r"   Fr   rP   )
renamer	   r   r
   r`   ra   uniquer   assert_produces_warningr   )
r6   r_   rQ   r7  r9   rM   r"   rc   rb   rF   s
             r8   test_astype_categoryzTestBase.test_astype_category  s(   
  	#**T""C !111E--#CdGDDD
fhd;;;; !!4!4!6!6ss!;WEEM'cBBB 	2 	2ZZDZ11F	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2 	2'cBBB 	E 	E'$eDDDH	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E 	E
fhd;;;;eZZ
Z66F'$777H!&($??????	 s$   C''C+.C+D,,D03D0c                h   |                                 }|j        du sJ |d d         }|j        du sJ |                    d|d                   }|j        du sJ |                    dt          j                  }|j        du sJ |                    dt          j                  }|j        du sJ d S )NTr   F)drop_duplicatesr  r   r   r  )r6   r9   r   index_empty	index_dupindex_naindex_na_dups          r8   test_is_uniquezTestBase.test_is_unique  s    ,,..$&&&& BQBi$,,,, LLE!H--	"e++++ <<26**!T))))  q"&11%......r:   c                ~    |                                 }t          j        |          }|j         ~ |            J d S r2   )r_   weakrefrefr   )r6   r9   r   rF  s       r8   test_engine_reference_cyclez$TestBase.test_engine_reference_cycle  sA     !!##k%  suu}}}}}r:   c                   t          |t                    rt          j        d           |}d}t          j        t
          t          f|          5  |d d d f          d d d            n# 1 swxY w Y   t          |t                    st          j        t
          t          f|          5  |d          d d d            n# 1 swxY w Y   t          j        t
          t          f|          5  |d          d d d            d S # 1 swxY w Y   d S d}t          j        t          |          5  |d          d d d            n# 1 swxY w Y   t          j        t          |          5  |d          d d d            d S # 1 swxY w Y   d S )NzTested elsewherez(Multi-dimensional indexing|too many|onlyr=   TFzonly integers, slices)r?   r   r@   rA   rC   r   r   r   rL   s       r8   test_getitem_2d_deprecatedz#TestBase.test_getitem_2d_deprecated  s   lM22 	,K*+++8]J
33??? 	 	4LL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 #z** 	
J7sCCC  D		              
J7sCCC  E

                  *Cz555  D		              z555  E

                 sZ   A))A-0A-+	C  CC-	DD
D-	EE	E(	E>>FFc                    |}|                     |d                    |                                }|j        |j        u sJ d S r  )r   r_   r   )r6   r9   rM   r_   s       r8   test_copy_shares_cachezTestBase.test_copy_shares_cache  sE    CFxxzz{cj((((((r:   c                    |}|                     |d                    |                                }|j        |j        u sJ |                    |j                  }|j        |j        usJ |j        i k    sJ d S r  )r   _viewr   _shallow_copyrk   )r6   r9   rM   shallow_copys       r8   test_shallow_copy_shares_cachez'TestBase.test_shallow_copy_shares_cache  s    CFyy{{"cj0000((33"#*4444"b((((((r:   c                h   |d d         }t          j        ddt           j        ddg          }t          j        |                    |          |ddg         |ddg         d           t          t          dd	d          t          dd
d          t          j	        t          dd
d          t          dd	d          gd          j
        }t          d          t          d          g}|d         |ddg         |d         |ddg         i}t          j        |                    |          |           d S )Nr    r%   r   r   r      )g      ?g       @i  r,      r   )r   z
2011-11-01z
2011-12-01)r   r   r  r`   assert_dict_equalgroupbyr   r   r   NaTr   r   )r6   r9   rM   
to_groupbyex_keysrb   s         r8   test_index_groupbyzTestBase.test_index_groupby(  s:   2A2Xq!RVQ233

KK
##31v;S!Q[%I%I	
 	
 	
 #r1%%r1%%r1%%r1%% 	
 	
 	
  	 \**Il,C,CDAJQFWQZaVE
S[[44h?????r:   c                   |}t          |          }|                    |          }|j        |j        k    sJ t          j        |d |         |dd           t          j        ||d          |dd           |                    t          t          |                    dz            }t          j        ||d           d S )NFT)r"  check_exactr   )r[  )r   r   r"   r`   ra   taker   range)r6   r9   r   Nrc   alts         r8   test_append_preserves_dtypez$TestBase.test_append_preserves_dtype>  s    JJe$$|u{****
fRaRj%u$OOOO
fQRRj%u$OOOOjjeAhh!+,,
fct<<<<<<r:   c                   |}|j         j        dv rh| }t          |j         |j                  }t          j        ||           t          |           }t          j        |t          |                     d S |j         j        dk    rd}nd}t          j
        t          |          5  |  d d d            n# 1 swxY w Y   t          j
        t          |          5  t          |            d d d            d S # 1 swxY w Y   d S )N)r*  urP   r0  z0ufunc 'invert' not supported for the input typesz8bad operand|__invert__ is not supported for string dtyper=   )r"   rw   r   r   rQ   r`   ra   r   r   r@   rC   rD   )r6   r9   r   rM   resrb   res2rF   s           r8   test_invzTestBase.test_invL  s   9>Z''$Ccj[sx888H!#x000 3KK<D"4)9)9:::::y~$$HPy444                 y444                   s$   )B99B= B=C==DD)ArI   
__module____qualname__r@   fixturer   r   r   r   float64float32uint64r]  int64int32int16int8r   r   r   r   r   from_breaksr9   rG   rN   rS   rd   rs   r|   r   r   markfilterwarningsr   r   r   r   r   r   r   r   r   r   r   r   r  r
  r  r  r  r$  parametrizer2  r6  r<  rC  arm_slowrG  rI  rK  rP  rY  r`  re  r   r:   r8   r   r   '   s7       V^JQRa000E)")ARZ00011E)")ARZ00011E)")ARY///00E%%2q//222E%%2q//222E%%2q//222E%%2q//111E$$w--  E***++LQS999N   (
 
 
 MVVV&  
 &M%eeBii@@@9
  @ A @! ! !(  $ $ $2 2 2h- - -^   4 4 4) ) ) [ VWW<X <X XW<X|% % %0' ' '0I I I4 4 42
9 
9 
9( ( (0 0 0,) ) )!- !- !-F! ! !. [ VWW3 3 XW32<H <H <H|!' !' !'F@ @ @$  4 4 4: : : [GG77	
  [ VWW0 0 XW 0(0 0 0 [VdE]33[VdE]33[Yu66@ @ 76 43 43@6/ / /* [    ,) ) )
) 
) 
)@ @ @,= = =    r:   r   c                     e Zd Z ej         eddd           e ej        dej	                             e ej        dej
                             e ej        dej                             e eddd          ej                   e eddd          ej                   e eddd          ej                   e eddd          ej                  g          d             Zd	 Zd
 Zd Zd Zd Zd Zej                            dej        ej        g          d             Zd ZdS )TestNumericBaser   r   r   r   r    r!   r/   c                    |j         S r2   r3   r5   s     r8   r9   zTestNumericBase.simple_indexe  s     }r:   c                .   t          |t                    rt          j        d           t	          |          }|j        }t          ddg|          } ||          }t          j        ddg|j                  }t          j
        |j        |           d S )Nrf   r%   r   r!   )r?   r   r@   rA   rE   r"   r   r   r   r`   r   rk   )r6   r9   	index_clsr"   rM   rc   rb   s          r8   test_constructor_unwraps_indexz.TestNumericBase.test_constructor_unwraps_indext  s    lJ// 	-K+,,,&&	"QF%(((38QF#)444
#FL(;;;;;r:   c                L    |}|d         }|                     |          du sJ d S )Nr   F)$_can_hold_identifiers_and_holds_name)r6   r9   rM   keys       r8   test_can_hold_identifiersz)TestNumericBase.test_can_hold_identifiers  s5    !f77<<EEEEEEr:   c                   t          |t                    rt          j        d           t	          |          }|j        } |g |d          }|                                }|j        dk    sJ |                    |          }t          j	        | ||d          d           d}t          j
        t          |          5  |                    |           d d d            d S # 1 swxY w Y   d S )	Nrf   Foo)r"   rQ   rP   Tr!  z[Cannot change data-type for array of references.|Cannot change data-type for object array.|r=   )r?   r   r@   rA   rE   r"   viewrQ   r`   ra   rC   rD   )r6   r9   ry  r"   rM   idx_viewrF   s          r8   	test_viewzTestNumericBase.test_view  s=   lJ// 	-K+,,,&&	"i%e44488::}%%%%88E??
c99XE#B#B#B$OOOO9 	 ]9C000 	  	 HHY	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	 s   C&&C*-C*c                    |}|                     d|d                   }t          |d         gt          |          |j                  }t	          j        ||d           d S )Nr   r!   Tr!  )r   r   r   r"   r`   ra   )r6   r9   r   rc   rb   s        r8   test_insert_non_naz"TestNumericBase.test_insert_non_na  sd     aq**%(1T%[[1EEE
fhd;;;;;;r:   c                   |}|}|t           j        u r@t          |d         t           j        gt          |dd                    t                    }n^t          |d         t
          j        gt          |dd                              }|j        j        dk    rt          ||j                  }|	                    d|          }t          j        ||d           d S )Nr   r%   r!   r0  Tr!  )r   rV  r   r   r[   r   r  r"   rw   r   r`   ra   )r6   nulls_fixturer9   r   na_valrb   rc   s          r8   test_insert_nazTestNumericBase.test_insert_na  s    RVeAhAeABBiAPPPHHeAhAeABBiABBH{3&& ===a((
fhd;;;;;;r:   c                   t          |          }|t          u rt          d          }n |t          j        dd                    }t          j        dd          dz  }t	          |t          j                  }|dz  }t          j        ||           d|z  }t          j        ||           t	          |t          j                  }t          j        dd          }||z
  }t          j        ||           t	          | t          j                  }t          j        dd          }||z
  }t          j        ||           d S )Nr    rl  r!   g	@ri  )	rE   r   r   r   r   ri  r`   ra   r  )	r6   r9   ry  rM   arrrb   fidxr$   rc   s	            r8   $test_arithmetic_explicit_conversionsz4TestNumericBase.test_arithmetic_explicit_conversions  s@    &&	
""Q--CC)BIaw77788C i)))C/BJ///Sy
dH---Sy
dH--- BJ///HQi(((
fh///#RZ000HQi(((T
fh/////r:   complex_dtypec                v    |                     |          }t          |          t          u r|j        |k    sJ d S r2   )r   rE   r   r"   )r6   r  r9   rc   s       r8   test_astype_to_complexz&TestNumericBase.test_astype_to_complex  s>    $$]33F||u$$)F)F)FF)F)Fr:   c                   t          |t                    rt          j        d            t	          |          g d|j                  } t	          |          g d|j                  }t          j        ||           d S )Nz.casting of strings not relevant for RangeIndex)012r!   )r   r%   r   )r?   r   r@   rA   rE   r"   r`   ra   )r6   r9   rc   rb   s       r8   test_cast_stringz TestNumericBase.test_cast_string  s    lJ// 	JKHIII#l##OOO<;MNNN%4%%iii|7IJJJ
fh/////r:   N)rI   rf  rg  r@   rh  r   r   r   r   ri  rj  rk  r]  rl  rm  rn  ro  r9   rz  r~  r  r  r  r  rq  rs  	complex64
complex128r  r  r   r:   r8   rv  rv  d  s       V^JQRa000E)")ARZ00011E)")ARZ00011E)")ARY///00E%%2q//222E%%2q//222E%%2q//222E%%2q//111	
    	< 	< 	<F F F
     *< < << < < 0 0 08 [_r|R].KLLG G MLG
0 0 0 0 0r:   rv  )*
__future__r   r   rE  numpyr   r@   pandas._libs.tslibsr   pandas.errorsr   pandas.core.dtypes.commonr   r   pandas.core.dtypes.dtypesr	   pandasr   r
   r   r   r   r   r   r   r   r   r   r   r   r   pandas._testing_testingr`   pandas.core.algorithmscore
algorithmsr  pandas.core.arraysr   r   rv  r   r:   r8   <module>r     s   " " " " " "             ) ) ) ) ) ) ( ( ( ( ( (        7 6 6 6 6 6                                        & & & & & & & & & . . . . . .z z z z z z z zzv0 v0 v0 v0 v0 v0 v0 v0 v0 v0r:   