
    Mh                        S r SSKrSSKrSSKrSSKJr  SSKJr	  S r
S rS rS r\R                  R                  S5      S	 5       rS
 rS rS r " S S5      r " S S5      r " S S5      r " S S5      r " S S5      rg)z9
Tests that can be parametrized over _any_ Index object.
    N)InvalidIndexErrorc                     [         R                  " [        SS9   U (       a   S S S 5        [         R                  " [        SS9   [        U 5        S S S 5        g ! , (       d  f       N<= f! , (       d  f       g = f)NzThe truth value of amatch)pytestraises
ValueErrorboolindexs    U/var/www/html/env/lib/python3.13/site-packages/pandas/tests/indexes/test_any_index.pytest_boolean_context_compatr      sR    	z)?	@ 
A 
z)?	@U 
A	@	 
A	@ 
A	@s   	AA*
A'*
A8c                     Sn[         R                  " [        US9   U R                  5         S S S 5        g ! , (       d  f       g = f)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	   6
Ac                     [         R                  " [        S[        U 5      R                   S3S9   [        U 5        S S S 5        g ! , (       d  f       g = f)Nzunhashable type: ''r   )r   r   r   type__name__hashr   s    r   test_hash_errorr      s:    	y*<T%[=Q=Q<RRS(T	UU 
V	U	Us   A
Ac                     [        U 5      (       d  [        R                  " S5        Sn[        R                  " [        US9   U S   U S'   S S S 5        g ! , (       d  f       g = f)Nz'Test doesn't make sense for empty indexz)Index does not support mutable operationsr   r   )lenr   skipr   r   r   s     r   test_mutabilityr   #   sD    u::=>
5C	y	,8a 
-	,	,s   	A
A"z3ignore:PeriodDtype\[B\] is deprecated:FutureWarningc                     U R                  S 5      nU R                  [        :X  a.  UR                  [        :X  a  X:H  R	                  5       (       d   eg [
        R                  " X SS9  g )Nc                     U $ N )xs    r   <lambda>+test_map_identity_mapping.<locals>.<lambda>/   s        equivexact)mapdtypeobjectr
   alltmassert_index_equal)r   requestresults      r   test_map_identity_mappingr2   +   sS     YY{#F{{f!5$$&&&&&w7r&   c                     U R                   / SQ-  n[        R                  " [        SS9   Xl        S S S 5        g ! , (       d  f       g = f)N)applebananacarrotz^Lengthr   )nlevelsr   r   r	   names)r   r8   s     r   test_wrong_number_namesr9   7   s0    MM99E	z	3 
4	3	3s	   ;
A	c                 X    U R                  5       R                  U R                  :X  d   eg r!   )viewnamer   s    r   test_view_preserves_namer=   =   s     ::<

***r&   c                 P    U R                  5       n[        R                  " X5        g r!   )ravelr.   r/   )r   ress     r   
test_ravelrA   A   s    
++-C#%r&   c                   &    \ rS rSrS rS rS rSrg)TestConversionG   c                     UR                  5       nUR                  UR                  Ld   eUR                  ULd   eUR                  UR                  :X  d   eg r!   	to_seriesvaluesr   r<   selfr   sers      r   test_to_seriesTestConversion.test_to_seriesH   sN     oozz---yy%%%xx5::%%%r&   c                 `   UR                  US9nUR                  UR                  Ld   eUR                  UL d   eUR                  UR                  :X  d   eUR                  SS9nUR                  UR                  Ld   eUR                  ULd   eUR                  UR                  :w  d   eg )Nr   __testr<   rF   rI   s      r   test_to_series_with_arguments,TestConversion.test_to_series_with_argumentsP   s     ooEo*zz---yyE!!!xx5::%%% oo8o,zz---yy%%%xx5::%%%r&   c                 B    UR                  5       [        U5      :X  d   eg r!   )tolistlistrJ   r   s     r   test_tolist_matches_list'TestConversion.test_tolist_matches_lista   s    ||~e,,,r&   r"   N)r   
__module____qualname____firstlineno__rL   rQ   rW   __static_attributes__r"   r&   r   rC   rC   G   s    &&"-r&   rC   c                        \ rS rSrS rS rSrg)TestRoundTripse   c                     [         R                  " U5      n[         R                  " X!SS9  UR                  S:  a  UR	                  U5      (       d   eg g )NTr(      )r.   round_trip_pickler/   r7   equal_levelsrJ   r   r1   s      r   test_pickle_roundtrip$TestRoundTrips.test_pickle_roundtripf   sJ    %%e,
f48>>A%%f---- r&   c                     UR                   Sso!l         [        R                  " U5      nUR                  U5      (       d   eX!l         g )Nfoo)r<   r.   rb   equals)rJ   r   original_name	unpickleds       r   test_pickle_preserves_name)TestRoundTrips.test_pickle_preserves_namem   s<    $)JJ!z((/	||I&&&&"
r&   r"   N)r   rY   rZ   r[   re   rl   r\   r"   r&   r   r^   r^   e   s    .#r&   r^   c                   n    \ rS rSrS rS rS r\R                  R                  S/ SQ5      S 5       r
Srg	)
TestIndexingt   c                    [         R                  " SS/[         R                  S9n[        R                  " [
        SS9   UR                  U5        S S S 5        [        R                  " [
        SS9   UR                  UR                  [        5      5        S S S 5        g ! , (       d  f       NU= f! , (       d  f       g = f)Nr   ra   )r+   z\[0 1\]r   z\[False  True\])	nparrayintpr   r   r   get_locastyper
   )rJ   r   keys      r   0test_get_loc_listlike_raises_invalid_index_error=TestIndexing.test_get_loc_listlike_raises_invalid_index_erroru   s    hh1vRWW-]],J?MM# @ ]],4FGMM#**T*+ HG @? HGs   B 2%B1 
B.1
B?c                 J    US   nUR                  U5      (       d   eX!Ld   eg )N.)ri   rd   s      r   test_getitem_ellipsis"TestIndexing.test_getitem_ellipsis   s,    s}}U####"""r&   c                 B    UR                   USS  R                   :X  d   eg )Nra   rP   rV   s     r   test_slice_keeps_name"TestIndexing.test_slice_keeps_name   s    zzU12Y^^+++r&   item)r_   no_intg      @c                     SR                  S[        R                  " S5      S/5      n[        R                  " [
        US9   X     S S S 5        g ! , (       d  f       g = f)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)rJ   r   r   r   s       r   test_getitem_errorTestIndexing.test_getitem_error   sO    hhH		(
 &

 ]]:S1K 211s   A
Ar"   N)r   rY   rZ   r[   rx   r{   r~   r   markparametrizer   r\   r"   r&   r   ro   ro   t   s7    ,#, [[V%9: ;r&   ro   c                       \ rS rSrS rSrg)TestRendering   c                 |    SUl         S[        U5      ;   d   e[        U5      R                  [        U5      ;   d   eg )Nrh   z'foo')r<   strr   r   rV   s     r   test_strTestRendering.test_str   s7    
#e*$$$E{##s5z111r&   r"   N)r   rY   rZ   r[   r   r\   r"   r&   r   r   r      s    2r&   r   c                       \ rS rSrS rSrg)TestReductions   c                    Sn[         R                  " [        US9   UR                  SS9  S S S 5        [         R                  " [        US9   UR	                  SS9  S S S 5        [         R                  " [        US9   UR                  SS9  S S S 5        [         R                  " [        US9   UR                  SS9  S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nb= f! , (       d  f       g = f)Nz8`axis` must be fewer than the number of dimensions \(1\)r   ra   )axis   )r   r   r	   argmaxargminminmax)rJ   r   r   s      r   test_argmax_axis_invalid'TestReductions.test_argmax_axis_invalid   s    I]]:S1LLaL  2]]:S1LLaL  2]]:S1II2I 2]]:S1II2I 21 21111111s/   CC>C*/C;
C
C'*
C8;
D	r"   N)r   rY   rZ   r[   r   r\   r"   r&   r   r   r      s    
r&   r   )__doc__r   numpyrr   r   pandas.errorsr   pandas._testing_testingr.   r   r   r   r   r   filterwarningsr2   r9   r=   rA   rC   r^   ro   r   r   r"   r&   r   <module>r      s    
   + 
 RS8 T8+&- -<# #" "J2 2 r&   