
    bMh                     ,   d Z ddlZddlZddlZddlmZ ddlmZ	 d Z
d Zd Zd Zej                            d          d	             Zd
 Zd Zd Z G d d          Z G d d          Z G d d          Z G d d          Z G d d          ZdS )z9
Tests that can be parametrized over _any_ Index object.
    N)InvalidIndexErrorc                     t          j        t          d          5  | r	 d d d            n# 1 swxY w Y   t          j        t          d          5  t          |            d d d            d S # 1 swxY w Y   d S )NzThe truth value of amatch)pytestraises
ValueErrorboolindexs    c/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/indexes/test_any_index.pytest_boolean_context_compatr      s    	z)?	@	@	@   	               
z)?	@	@	@  U                 s   ,00A//A36A3c                     d}t          j        t          |          5  |                                  d d d            d S # 1 swxY w Y   d S )Nz=cannot sort an Index object in-place, use sort_values insteadr   )r   r   	TypeErrorsortr   msgs     r   	test_sortr      s    
IC	y	,	,	,  

                 s   A  AAc                     t          j        t          dt          |           j         d          5  t          |            d d d            d S # 1 swxY w Y   d S )Nzunhashable type: ''r   )r   r   r   type__name__hashr   s    r   test_hash_errorr      s    	y(TT%[[=Q(T(T(T	U	U	U  U                 s   AAAc                     t          |           st          j        d           d}t          j        t          |          5  | d         | d<   d d d            d S # 1 swxY w Y   d S )Nz'Test doesn't make sense for empty indexz)Index does not support mutable operationsr   r   )lenr   skipr   r   r   s     r   test_mutabilityr   #   s    u:: ?=>>>
5C	y	,	,	,  8a                 s   AA!Az3ignore:PeriodDtype\[B\] is deprecated:FutureWarningc                     |                      d           }| j        t          k    r,|j        t          dfv r| |k                                    sJ d S t          j        || d           d S )Nc                     | S N )xs    r   <lambda>z+test_map_identity_mapping.<locals>.<lambda>/   s         stringequivexact)mapdtypeobjectr
   alltmassert_index_equal)r   requestresults      r   test_map_identity_mappingr2   +   st     YY{{##F{f$1A!A!A$$&&&&&&%w777777r%   c                     | j         g dz  }t          j        t          d          5  || _        d d d            d S # 1 swxY w Y   d S )N)applebananacarrotz^Lengthr   )nlevelsr   r   r	   names)r   r8   s     r   test_wrong_number_namesr9   7   s    M9999E	z	3	3	3                   s   =AAc                 N    |                                  j        | j        k    sJ d S r!   )viewnamer   s    r   test_view_preserves_namer=   =   s&    ::<<
******r%   c                 X    |                                  }t          j        ||            d S r!   )ravelr.   r/   )r   ress     r   
test_ravelrA   A   s(    
++--C#u%%%%%r%   c                        e Zd Zd Zd Zd ZdS )TestConversionc                     |                                 }|j        |j        usJ |j        |usJ |j        |j        k    sJ d S r!   	to_seriesvaluesr   r<   selfr   sers      r   test_to_serieszTestConversion.test_to_seriesH   sV     ooz----y%%%%x5:%%%%%%r%   c                    |                     |          }|j        |j        usJ |j        |u sJ |j        |j        k    sJ |                     d          }|j        |j        usJ |j        |usJ |j        |j        k    sJ d S )Nr   __testr<   rE   rH   s      r   test_to_series_with_argumentsz,TestConversion.test_to_series_with_argumentsP   s     ooEo**z----yE!!!!x5:%%%% oo8o,,z----y%%%%x5:%%%%%%r%   c                 T    |                                 t          |          k    sJ d S r!   )tolistlistrI   r   s     r   test_tolist_matches_listz'TestConversion.test_tolist_matches_lista   s'    ||~~e,,,,,,r%   N)r   
__module____qualname__rK   rO   rT   r"   r%   r   rC   rC   G   sA        & & && & &"- - - - -r%   rC   c                       e Zd Zd Zd ZdS )TestRoundTripsc                     t          j        |          }t          j        ||d           |j        dk    r|                    |          sJ d S d S )NTr(      )r.   round_trip_pickler/   r7   equal_levelsrI   r   r1   s      r   test_pickle_roundtripz$TestRoundTrips.test_pickle_roundtripf   s_    %e,,
fe48888>A%%f----- --r%   c                     |j         dc}|_         t          j        |          }|                    |          sJ ||_         d S )Nfoo)r<   r.   r[   equals)rI   r   original_name	unpickleds       r   test_pickle_preserves_namez)TestRoundTrips.test_pickle_preserves_namem   sE    $)J!uz(//	||I&&&&&"


r%   N)r   rU   rV   r^   rd   r"   r%   r   rX   rX   e   s2        . . .# # # # #r%   rX   c                   l    e Zd Zd Zd Zd Zej                            dg d          d             Z	dS )TestIndexingc                    t          j        ddgt           j                  }t          j        t
          d          5  |                    |           d d d            n# 1 swxY w Y   t          j        t
          d          5  |                    |                    t                               d d d            d S # 1 swxY w Y   d S )Nr   rZ   )r+   z\[0 1\]r   z\[False  True\])	nparrayintpr   r   r   get_locastyper
   )rI   r   keys      r   0test_get_loc_listlike_raises_invalid_index_errorz=TestIndexing.test_get_loc_listlike_raises_invalid_index_erroru   s4   h1vRW---],J??? 	 	MM#	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ],4FGGG 	, 	,MM#**T**+++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	,s#   A  A$'A$.CCCc                 P    |d         }|                     |          sJ ||usJ d S )N.)ra   r]   s      r   test_getitem_ellipsisz"TestIndexing.test_getitem_ellipsis   s:    s}}U#####U""""""r%   c                 :    |j         |dd          j         k    sJ d S )NrZ   rN   rS   s     r   test_slice_keeps_namez"TestIndexing.test_slice_keeps_name   s%    zU122Y^++++++r%   item)e   no_intg      @c                     d                     dt          j        d          dg          }t          j        t
          |          5  ||          d d d            d S # 1 swxY w Y   d S )N|z5index 101 is out of bounds for axis 0 with size [\d]+zuonly integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indiceszindex out of boundsr   )joinreescaper   r   
IndexError)rI   r   rs   r   s       r   test_getitem_errorzTestIndexing.test_getitem_error   s    hhH	( 
 &

 

 ]:S111 	 	$KK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   	AA #A N)
r   rU   rV   rn   rp   rr   r   markparametrizer|   r"   r%   r   rf   rf   t   sv        , , ,# # #, , , [V%9%9%9::  ;:  r%   rf   c                       e Zd Zd ZdS )TestRenderingc                     d|_         dt          |          v sJ t          |          j        t          |          v sJ d S )Nr`   z'foo')r<   strr   r   rS   s     r   test_strzTestRendering.test_str   sF    
#e**$$$$E{{#s5zz111111r%   N)r   rU   rV   r   r"   r%   r   r   r      s#        2 2 2 2 2r%   r   c                       e Zd Zd ZdS )TestReductionsc                 T   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            n# 1 swxY w Y   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 )Nz8`axis` must be fewer than the number of dimensions \(1\)r   rZ   )axis   )r   r   r	   argmaxargminminmax)rI   r   r   s      r   test_argmax_axis_invalidz'TestReductions.test_argmax_axis_invalid   s   I]:S111 	! 	!LLaL   	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	!]:S111 	! 	!LLaL   	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	!]:S111 	 	II2I	 	 	 	 	 	 	 	 	 	 	 	 	 	 	]:S111 	 	II2I	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	sG   AAA'B

BB0CCC9DD!$D!N)r   rU   rV   r   r"   r%   r   r   r      s#        
 
 
 
 
r%   r   )__doc__ry   numpyrh   r   pandas.errorsr   pandas._testing_testingr.   r   r   r   r   r}   filterwarningsr2   r9   r=   rA   rC   rX   rf   r   r   r"   r%   r   <module>r      s    
			      + + + + + +            
   RSS8 8 TS8  + + +& & &- - - - - - - -<# # # # # # # #" " " " " " " "J2 2 2 2 2 2 2 2         r%   