
    MhG#                         S SK r S SKrS SKrS SKJr  S SKJr  S SK	r
S SK	JrJrJrJr  S SKJr  S rS rS rS rS	 r\R.                  R0                  S
 5       rS rS rS rS rS rS rS r S r!S r"S r#S r$g)    Nindex)'construct_1d_object_array_from_listlike)IndexIntervalIndex
MultiIndex
RangeIndexc                     [         R                  " SS/5      n U R                  S   R                  S:X  d   eU R                  S   R                  S:X  d   e[         R                  " S/[        S5      /5      n U R                  S   R                  S:X  d   e[         R                  " S/[        S5      /5      n U R                  S   R                  S	:X  d   e[         R                  " S/[        S
5      /5      n U R                  S   R                  S:X  d   e[         R                  " S/[        S5      /5      n U R                  S   S:  R                  5       (       d   eU R                  S   S:  R                  5       (       d   eg )N)A   )r      r   int8r   a(   i  int16i@  int32i  )r   from_tuplescodesdtypefrom_productrangeall)is    [/var/www/html/env/lib/python3.13/site-packages/pandas/tests/indexes/multi/test_integrity.pytest_labels_dtypesr      sQ   (34A771:v%%%771:v%%%#b	 23A771:v%%%#c
 34A771:w&&&#e 56A771:w&&&#d 45AGGAJ!O  """"GGAJ!O  """"    c            	         S[         R                  " S5      4S[         R                  4S[         R                  " S5      4S[         R                  " S5      4S[         R                  " S5      4S[         R                  " S5      4/n [        R                  " U 5      n[        U 5      n[        R                  " UR                  U5        [        R                  " UR                  S S US S R                  5        g )	Nr   z
2000-01-01r      z
2000-01-03z
2000-01-04z
2000-01-02   )	pd	TimestampNaTr   r   r   tmassert_numpy_array_equalvalues)tuplesresultexpecteds      r   test_values_boxedr)   &   s    	
BLL&'	
BFF	
BLL&'	
BLL&'	
BLL&'	
BLL&'F ##F+F6v>Hx8bq 16"1:3D3DEr   c                     [         R                  " SS5      n [        R                  " U 5      n[        R                  " U SS9n[        R
                  " X/5      nUR                  n[        R                  " U Vs/ s H  oUS   PM	     sn5      n[        R                  " Xa5        [        R                  " U Vs/ s H  oUS   PM	     sn5      n[        R                  " Xr5        US S R                  n[        R                  " U Vs/ s H  oUS   PM	     sn5      n[        R                  " XaS S 5        [        R                  " U Vs/ s H  oUS   PM	     sn5      n[        R                  " XrS S 5        g s  snf s  snf s  snf s  snf )Nl     NZol    NZoz
US/Central)tzr   r   r   )	nparanger    DatetimeIndexr   from_arraysr%   r#   assert_index_equal)intsnaiveawareidxr'   xouterinners           r   $test_values_multiindex_datetimeindexr8   6   s<   99VZ(DT"ETl3E

 
 %
0CZZFF3FqdF34E%'F3FqdF34E%' !W^^FF3FqdF34E%r+F3FqdF34E%r+ 4 4 4 4s   :E89E=F	Fc                     [         R                  " SS5      n [        R                  " U SS9n[        R
                  " X/5      nUR                  n[        U Vs/ s H  oDS   PM	     sn5      n[        R                  " U[        U [         R                  S95        [        R                  " U Vs/ s H  oDS   PM	     sn5      n[        R                  " Xa5        US S R                  n[        U Vs/ s H  oDS   PM	     sn5      n[        R                  " U[        U S S [         R                  S95        [        R                  " U Vs/ s H  oDS   PM	     sn5      n[        R                  " XaS S 5        g s  snf s  snf s  snf s  snf )	Ni  i  D)freqr   r   r   r   )r,   r-   r    PeriodIndexr   r/   r%   r   r#   r0   int64)r1   pidxr4   r'   r5   r6   r7   s          r   "test_values_multiindex_periodindexr@   P   s4   99T4 D>>$S)D

 
 $
.CZZF(AQ4()E%t288!<=NN&1&QaD&12E%& !W^^F(AQ4()E%tBQxrxx!@ANN&1&QaD&12E%bq* ) 2 ) 2s   E:/E?2FF	c                  r   [        [        S5      5      n [        [        S5      5      n[        R                  " S5      n[        R                  " [        S5      S5      n[        X/X#/S9n[        R                  " / SQ5      n[        R                  " / SQ5      n[        X/X#/S9nUR                  SL d   eg )Nip 
   iX  )levelsr   )	r   r   r   r   r   r   r   r   r   )	r   r   r   r   r   r   r   r   r   F)listr   r,   r-   repeatr   array	is_unique)
major_axis
minor_axismajor_codesminor_codesr   s        r   test_consistencyrL   h   s    eEl#JeBiJ))E"K))E"It,K '/IE
 ((67K((67K'/IE ??e###r   c           	      &   SnU R                  5        nUR                  [        SU5        [        R                  " [
        R                  " S5      [
        R                  " S5      /SS/S9nUR                  UR                  5      n[        R                  " U[
        R                  " [        U5      SS95        S	S
[        U5      S-
  [        U5      S
-
  4 H  nUR                  X5   5      nXE:X  a  M   e   S S S 5        g ! , (       d  f       g = f)N2   _SIZE_CUTOFF   onetwonamesintpr<   r   r   r   )contextsetattrlibindexr   r   r,   r-   get_indexerr%   r#   r$   lenget_loc)monkeypatchsize_cutoffmr   r'   r   s         r   test_hash_collisionsr_      s     K				!			(NK8''YYq\299Q<(
 ""5<<0
##FBIIc%j,OPQE
QE
Q7A]]58,F;; 8 
		s   CD5D
Dc                      g )N ra   r   r   	test_dimsrb      s    r   c                  6   SS/[         R                  " S5      [         R                  " S5      //n [        R                  " U SS/S9nSS	/nS
n[        R
                  " [        US9   UR                  US	S9  S S S 5        Sn[        R
                  " [        US9   UR                  X"S9  S S S 5        Sn[        R
                  " [        US9   UR                  USS9  S S S 5        g ! , (       d  f       Nv= f! , (       d  f       NT= f! , (       d  f       g = f)Nr   Bz
2011-01-01z
2011-01-02strdtrS   r   r   z1take\(\) got an unexpected keyword argument 'foo'match)fooz$the 'out' parameter is not supported)outz%the 'mode' parameter is not supportedclip)mode)	r    r!   r   r   pytestraises	TypeErrortake
ValueError)valsr4   indicesmsgs       r   test_take_invalid_kwargsru      s    #Jl3R\\,5OPQD

!
!$udm
<C!fG
>C	y	,a  
- 1C	z	-& 
. 2C	z	-v& 
.	- 
-	, 
.	- 
.	-s$   'C(C9D
(
C69
D

Dc                     Sn[         R                  " [        US9   [        R                  " U 5        S S S 5        g ! , (       d  f       g = f)Nz"isna is not defined for MultiIndexrg   )rm   rn   NotImplementedErrorr    isna)r4   rt   s     r   test_isna_behaviorry      s/     /C	*#	6
 
7	6	6s	   <
A
c                    SnU R                  5        nUR                  [        SU5        [        R                  " S[
        R                  " SS/[        US-
  5      /5      S/S9n[        R                  " [        SS9   UR                  S	     S S S 5        [        R                  " [        S
S9   UR                  S     S S S 5        [        R                  " S[
        R                  " SS/[        US-   5      /5      S/S9n[        R                  " [        SS9   UR                  S	     S S S 5        [        R                  " [        S
S9   UR                  S     S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nj= f! , (       d  f       NJ= f! , (       d  f       g = f)NrN   rO   r   r   dest)r   columnsz^\(-1, 0\)$rg   ))r   r{   z
^\(3, 0\)$))r   r   r{   )rV   rW   rX   r    	DataFramer   r   r   rm   rn   KeyErrorloc)r\   r]   r^   df_below_cutoffdf_above_cutoffs        r   test_large_multiindex_errorr      sJ   K				!			(NK8,,))Aq65q3I*JKH

 ]]8>:0 ;]]8=9/ :,,))Aq65q3I*JKH

 ]]8>:0 ;]]8=9/ :% 
	 ;:99 ;:99% 
	sm   A,F2?E.!F20E? AF2F,!F2F!F2.
E<	8F2?
F		F2
F	F2!
F/	+F22
G c                 0   U R                  [        SS5        [        S5      n[        R                  " XS.[
        R                  " X/5      S9nSn[        R                  " [        US9   US   R                  5         S S S 5        g ! , (       d  f       g = f)NrO   rN   )r   br   z&'Series' object has no attribute 'foo'rg   r   )rW   rX   r   r    r~   r   r/   rm   rn   AttributeErrorri   )r\   rdfrt   s       r   +test_mi_hashtable_populated_attribute_errorr      si    ."5b	A	A&j.D.DaV.L	MB
2C	~S	1
3 
2	1	1s   *B
Bc                 :    U S   nU R                  U5      SL d   eg )Nr   T)$_can_hold_identifiers_and_holds_name)r4   keys     r   test_can_hold_identifiersr      s$    
a&C33C8D@@@r   c                    U R                   U R                  p![        R                  " S5      n[        R
                  " [        US9   US   US'   S S S 5        [        R
                  " [        US9   US   S   US   S'   S S S 5        [        R
                  " [        US9   US   US'   S S S 5        [        R
                  " [        SS9   US   S   US   S'   S S S 5        U R                  n[        R
                  " [        US9   US   US'   S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nx= f! , (       d  f       g = f)Nz#does not support mutable operationsrg   r   z#assignment destination is read-only)	rC   r   recompilerm   rn   ro   rq   rT   )r4   rC   r   mutable_regexrT   s        r   test_metadata_immutabler      s   JJ		EJJDEM	y	61Iq	 
7	y	6ay|q	! 
7 
y	68a 
7	z)N	OAhqka 
P IIE	y	68a 
7	6 
7	6	6	6 
7	6	O	O 
7	6s<   	D1D*!	D;E	E
D'*
D8;
E	
E
E+c                      [         R                  " / SQ/ SQ/5      n U R                  (       d   eU R                  SS// SQ/5      n U R                  (       a   eg )N)r   r   rd   rd   rd   )r   r   r   r   r   r   rd   )r   r   r   )r   r/   is_monotonic_increasing
set_levels)inds    r   $test_level_setting_resets_attributesr      sP    

 
 ";_!M
NC&&&&
..3*i0
1C*****r   c            	      &   [         R                  " [        R                  " S5      R	                  S5      5      n [         R                  " [        R                  " S5      R	                  S5      5      n[         R
                  " U R                  SS9UR                  SS9S.SS9nSS	/UR                  l        [         R                  " [        R                  " S5      [        R                  " S5      S
.[        R                  " [        S5      [        S5      /SS	/S9S9n[        R                  " X#SS9  UR                  R                  S5      n[        [        R                  " S[        R                   S9SS9R#                  S5      n[        R$                  " XC5        UR                  R                  S	5      n[        [        R&                  " [        R                  " S[        R                   S9S5      S	S9n[        R$                  " XC5        g )Nd   )rB   rB   T)future_stack)df1df2r   )axisfizzbuzz)r   r   rB   rS   r   )
check_liker<   )name)r    r~   r,   r-   reshapeconcatstackr   rT   r   r   r   r#   assert_frame_equalget_level_valuesr   r>   rE   r0   tile)r   r   r   r(   r'   s        r   %test_rangeindex_fallback_coercion_bugr      so   
,,ryy~--h7
8C
,,ryy~--h7
8C			t	,SYYDY5QR
B f%BHHN||		#ryy~6%%uRy%)&<VVDTUH "48XX&&v.FRYYr2@GGKH&+XX&&v.FRWWRYYr:B?fMH&+r   c                 0   U R                  5       n[        U 5      (       an  U R                  U S   5        U R                  5       nU R                  SS9n[        U [        [
        45      (       d  X!:  d   eU R                  S:X  a  X2:  d   eg g US:X  d   eg )Nr   T)deepobject)memory_usagerZ   r[   
isinstancer	   r   inferred_type)r4   r'   result2result3s       r   test_memory_usager     s    F
3xxCF""$"""- #
M:;;###($$$ )
 {{r   c                 (    U R                   S:X  d   eg )Nr   )nlevels)r4   s    r   test_nlevelsr      s    ;;!r   )%r   numpyr,   rm   pandas._libsr   rX   pandas.core.dtypes.castr   pandasr    r   r   r   r	   pandas._testing_testingr#   r   r)   r8   r@   rL   markslowr_   rb   ru   ry   r   r   r   r   r   r   r   r   ra   r   r   <module>r      s    	   * K   #$F ,4+0$.   	'$02A
&+,2(r   