
    I jh                         S r SSKJrJr  SSKrSSKrSSKJr  SSKJ	r	J
r
JrJrJrJrJrJrJrJr  SSKJr  \R,                  S 5       r " S S5      r " S	 S
5      r " S S5      rg)z/
See also: test_reindex.py:TestReindexSetIndex
    )datetime	timedeltaN)Pandas4Warning)
CategoricalCategoricalIndex	DataFrameDatetimeIndexIndex
MultiIndexSeries
date_rangeperiod_rangeto_datetimec            
      >   [        / SQ/ SQ/ SQ[        R                  R                  S5      R	                  S5      [        R                  R                  S5      R	                  S5      [        R                  R                  S5      R	                  S5      S.5      n U $ )a%  
Fixture for DataFrame of columns that can be used for indexing

Columns are ['A', 'B', 'C', 'D', 'E', ('tuple', 'as', 'label')];
'A' & 'B' contain duplicates (but are jointly unique), the rest are unique.

     A      B  C         D         E  (tuple, as, label)
0  foo    one  a  0.608477 -0.012500           -1.664297
1  foo    two  b -0.633460  0.249614           -0.364411
2  foo  three  c  0.615256  2.154968           -0.834666
3  bar    one  d  0.234246  1.085675            0.718445
4  bar    two  e  0.533841 -0.005702           -3.533912
)foor   r   barr   )onetwothreer   r   )abcde      )ABCDEtupleaslabel)r   nprandomdefault_rngstandard_normal)dfs    z/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/pandas/tests/frame/methods/test_set_index.pyframe_of_index_colsr,      sz     
46*&&q)99!<&&q)99!<&(ii&;&;A&>&N&Nq&Q	
	
B I    c                      \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 r\R                  R                  SSSSS/S/5      \R                  R                  SSS/5      \R                  R                  SSS/5      S 5       5       5       r\R                  R                  SSSSS/S/5      \R                  R                  SSS/5      S 5       5       r\R                  R                  SSSSS/S/5      \R                  R                  SSS/5      S 5       5       rS r\R                  R                  S\\\R.                  \S S /5      \R                  R                  S/ SQ5      \R                  R                  SSS/5      S 5       5       5       r\R                  R                  S\\\R.                  \S /5      \R                  R                  S/ SQ5      \R                  R                  SSS/5      S  5       5       5       r\R                  R                  S!\\\R.                  \\S" S# /5      \R                  R                  S$\\\R.                  \\S% S& /5      \R                  R                  S/ S'Q5      \R                  R                  SSS/5      S( 5       5       5       5       r\R                  R                  S)SS/5      \R                  R                  SSS/5      S* 5       5       rS+ rS, rS- r S. r!S/r"g0)1TestSetIndex:   c                     / SQ/ SQS.n[        U5      n/ SQnX2S'   [        R                  " US   5      nUR                  U5        g )N)r   g      @   )   r      )t1t2))r      )r   r   )r7   r   tuples)r   r   from_tuples	set_index)selfr   r*   r8   indexs        r+   test_set_index_multiindex&TestSetIndex.test_set_index_multiindex;   sA    i0q\)8&&r(|4
Ur-   c           	          [        SSS.SSS.SSS	S
.SSSS
.// SQS9nUR                  SS/5      nUSS/   n[        R                  " US   US   /SS/S9Ul        [
        R                  " X#5        g )Nr7   r   )r   pr   
   )r   mr2         )r   rB   r@   r3         )r   rB   r@   xcolumnsr   rG   rB   r@   names)r   r:   r   from_arraysr<   tmassert_frame_equal)r;   r*   resultexpecteds       r+   test_set_index_empty_column(TestSetIndex.test_set_index_empty_columnF   s    a b!br*br*	 )
 sCj)sCj>#//C"S'0B3PS*U
f/r-   c                     [        [        SS9[        SS9/ S.5      nUR                  SS/5      nUR                  R	                  5       R
                  nUSS/   R
                  n[        R                  " X45        g )Nzdatetime64[ns]dtypeint64r   r   r   r   r   )r   r   r:   r<   to_framedtypesrM   assert_series_equal)r;   df1df2rO   rP   s        r+   test_set_index_empty_dataframe+TestSetIndex.test_set_index_empty_dataframeX   so    /0vG7LSUV
 mmS#J'##%,,Sz?))
v0r-   c                    [         R                  " / SQ5      n[        [        R                  R                  S5      R                  S5      US9nUR                  UR                  S   5      nUR                  S S 2SS 24   nUR                  S S 2S4   R                  Ul        UR                  S   /UR                  l        [        R                  " X45        g )N))r   r7   )r   r   )r   r7   r   )r2   r2   rH   r   r7   )r   r9   r   r&   r'   r(   r)   r:   rI   ilocvaluesr<   rK   rM   rN   )r;   rI   r*   rO   rP   s        r+    test_set_index_multiindexcolumns-TestSetIndex.test_set_index_multiindexcolumnsc   s    (()MNII!!!$44V<g
 bjjm,771ab5>A-- "

1
f/r-   c                    [        S/SS9R                  S5      n[        SU05      nUR                  U5      R                  S   R
                  S:X  d   e[        [        UR                  5      5      S   R
                  S:X  d   eUR                  UR                  5      R                  S   R
                  S:X  d   eg )Nz2014-01-01 10:10:10UTCtzzEurope/Romer   r   rC   )r	   
tz_convertr   r:   r<   hourr   r   )r;   idxr*   s      r+   test_set_index_timezone$TestSetIndex.test_set_index_timezonep   s     23>II-XSz"||C &&q).."444VBDD\*1-22b888||BDD!''*//2555r-   c           
      H   [        [        S5       Vs/ s H  n[        SSS5      [        U5      -   PM     sn[        R
                  R                  S5      R                  S5      S.5      nUR                  S5      n[        UR                  [        5      (       d   eg s  snf )Ni  i  r7   r   r   r   r   )r   ranger   r   r&   r'   r(   r)   r:   
isinstancer<   r	   )r;   ir*   idfs       r+   !test_set_index_cast_datetimeindex.TestSetIndex.test_set_index_cast_datetimeindexy   s    CH;O;ahtQ*Yq\9;OYY**1-==dC
 ll3#))]3333 Ps   #Bc                    [        SSSSS9n[        / SQ/ SQS.US	9R                  5       nUR                  S
5      n[        / SQ/ SQS.[	        US
S9S	9nUR
                  R                  S 5      Ul        [        R                  " X45        UR                  S
S/5      n[        R                  " U/ SQ/S
S/S9n[        S/ SQ0US9n[        R                  " X45        g )Nz2006-10-29 00:00:00r2   h
US/Pacific)periodsfreqrg   r   r7   r   )r2   r3   r   )r   r   )datar<   r<   namer   rJ   r   r<   )r   r   reset_indexr:   r
   r<   
_with_freqrM   rN   r   rL   )r;   dir*   resexp	exp_indexs         r+   test_set_index_dstTestSetIndex.test_set_index_dst   s    -qs|T))<BGSSUll7# y1)
 II((.	
c' llGS>***B	?7C.Q	i(	:
c'r-   c           	      t   Un[        [        R                  " [        U5      S-
  SS[        R                  S95      nUR                  U5      n[        R                  " UR                  U5        [        R                  " [        SS9   UR                  US S S2   5        S S S 5        g ! , (       d  f       g = f)Nr7   rT   zLength mismatchmatchr   )r
   r&   arangelenrV   r:   rM   assert_index_equalr<   pytestraises
ValueError)r;   float_string_framer*   rj   s       r+   test_set_indexTestSetIndex.test_set_index   s~    BIIc"gk2rBC\\#
bhh,]]:->?LLSqS" @??s   B))
B7c                    [        [        R                  " S5      [        [	        S5      [
        S9[        [        S5       Vs/ s H  nSU 3PM
     sn[
        S9S9nSUR                  l        UR                  UR                  5      R                  R                  S/:X  d   e[        R                  " USS	/   R                  R                  SS	/S
9n[        R                  " U/ SQ   R                  R                  / SQS
9nUR                  SS	/5      nUR                  UR                  5      R                  R                  SS	/:X  d   e[        UR                  UR                  5      R                  [        5      (       d   e[         R"                  " UR                  UR                  5      R                  U5        UR                  R%                  SS/5      n[        UR                  UR                  U/5      R                  [        5      (       d   e[         R"                  " UR                  UR                  U/5      R                  U5        g s  snf )N)rA   r3   ABCDrT   rA   zi-)rI   r<   r}   r   r   rJ   )r   r   r   r   )r   r   r   r    r   r    )r   r&   onesr
   listobjectro   r<   r}   r:   rK   r   rL   Tra   rp   rM   r   rename)r;   rq   r*   mimi2idx2s         r+   test_set_index_names!TestSetIndex.test_set_index_names   s   GGG$v,f55959a2aS95VD

 ||BHH%++11fX===##BSzN$4$4$;$;C:N$$#$&&--5I
 \\3*%||BHH%++11c3Z??? ",,rxx066
CCCC 	bll2884::B?xxSz* ",,$'78>>
KKKK 	bllBHHd+;<BBCH9 6s   Ikeysr   r   r   r"   inplaceTFdropc                    Un[        U[        5      (       a)  [        R                  " U Vs/ s H  oeU   PM	     snUS9nO[	        XT   US9nU(       a  UR                  USS9OUnXxl        U(       a&  UR                  5       n	U	R                  XBSS9n
U
b   eOUR                  XBS9n	[        R                  " X5        g s  snf )NrJ   r|   r7   axisT)r   r   )r   )rp   r   r   rL   r
   r   r<   copyr:   rM   rN   )r;   r,   r   r   r   r*   rG   rj   rP   rO   return_values              r+   test_set_index_drop_inplace(TestSetIndex.test_set_index_drop_inplace   s     !dD!!(()>AQ%)>dKCt,C,02774a7(bWWYF!++DT+JL'''\\$\2F
f/ *?s   B?c                 ^   Un[        U[        5      (       a  UOU/n[        R                  " UR                  /U Vs/ s H  oTU   PM	     sn-   S /UQS9nU(       a  UR                  USS9OUR                  5       nXgl        UR                  X2SS9n[        R                  " X5        g s  snf )NrJ   r7   r   Tr   append)
rp   r   r   rL   r<   r   r   r:   rM   rN   )	r;   r,   r   r   r*   rG   rj   rP   rO   s	            r+   test_set_index_append"TestSetIndex.test_set_index_append   s     !!$--tD6$$XXJ.AQ%..tmdm
 -12774a7(bggidd;
f/ /s   B*
c                     UR                  S/USS9n[        U[        5      (       a  UOU/nUR                  S/UQUSS9nUR                  X2SS9n[        R                  " Xe5        g )Nr    Tr   )r:   rp   r   rM   rN   )r;   r,   r   r   r*   rP   rO   s          r+   #test_set_index_append_to_multiindex0TestSetIndex.test_set_index_append_to_multiindex   sp     !**C5tD*I!$--tD6&00#DQU0Vdd;
f/r-   c                     [        / SQ/ SQS.5      n[        SSS/0[        SS/S	S
95      nUR                  UR                  R	                  S 5         nUR                  S	5      n[        R                  " XB5        g )Nrz   rW   )valkeyr   r7   r   r   r   r   r|   c                     U S:  $ )Nr7    )indxs    r+   <lambda><TestSetIndex.test_set_index_after_mutation.<locals>.<lambda>   s    tqyr-   )r   r
   locr<   mapr:   rM   rN   )r;   r*   rP   r\   rO   s        r+   test_set_index_after_mutation*TestSetIndex.test_set_index_after_mutation   sh    yABeaV_eS#JU.KLffRXX\\"89:u%
f/r-   boxc                     [        U 5      /$ N)r   rG   s    r+   r   TestSetIndex.<lambda>  s
    tAwir-   c                 0    [         R                  " U /5      $ r   r   rL   r   s    r+   r   r         j,,aS1r-   zappend, index_name)TNTr   TtestFNc                    UnXFR                   l        U" US   5      nU[        :X  a5  Sn[        R                  " [
        US9   UR                  XrUS9  S S S 5        g [        USS 5      n	U	c  [        USS 5      /OU	n
UR                  XrUS9nUR                  S/SUS9nU(       a  U/U
QOU
UR                   l        [        R                  " X5        g ! , (       d  f       g = f)Nr   z%['one', 'two', 'three', 'one', 'two']r   r   rK   r}   F)r<   r}   r   r   r   KeyErrorr:   getattrrK   rM   rN   )r;   r,   r   r   
index_namer   r*   r   msgname_mir}   rO   rP   s                r+    test_set_index_pass_single_array-TestSetIndex.test_set_index_pass_single_array  s    $ !""S'l$;9Cxs3SF; 43 c7D1G3:?GC./D\\#\@F ||SEf|EH:@J#6#6dHNN !!&3 43s   C
C!c                 0    [         R                  " U /5      $ r   r   r   s    r+   r   r   0  s    9O9OQRPS9Tr-   )r   Tr   r   r   r   c                 t   UnXFR                   l        SU" US   5      /nSU[        R                  [        [
        [        4;   a  S OS/nUR                  XrUS9n	UR                  SS/SUS9n
U(       a  U
R                  SSS9OU
n
U(       a  U/UQOUU
R                   l	        [        R                  " X5        g )Nr   r   r   Fr7   r   )r<   r}   r&   arrayr   r#   iterr:   r   rK   rM   rN   )r;   r,   r   r   r   r   r*   r   rK   rO   rP   s              r+   test_set_index_pass_arrays'TestSetIndex.test_set_index_pass_arrays/  s     !"SC\"cbhheT%BBdLdf= <<c
v<F158==1=-87=
3U35
f/r-   box2c                 0    [         R                  " U /5      $ r   r   r   s    r+   r   r   V  r   r-   c                     U R                   $ r   r|   r   s    r+   r   r   W      affr-   box1c                 0    [         R                  " U /5      $ r   r   r   s    r+   r   r   b  r   r-   c                     U R                   $ r   r|   r   s    r+   r   r   c  r   r-   )r   r   r   r   c                    UnXGR                   l        U" US   5      U" US   5      /nUR                  XUS9n	U" US   5      U" US   5      /n[        US   [        5      (       a,  US   S:X  a#  [        US   [        5      (       a  US   S:X  a  SOUn
UR                  US   /XS9nUR                  US   /USS9n[
        R                  " X5        g )Nr   r   r   r7   FT)r<   r}   r:   rp   strrM   rN   )r;   r,   r   r   r   r   r   r*   r   rO   
first_droprP   s               r+   $test_set_index_pass_arrays_duplicate1TestSetIndex.test_set_index_pass_arrays_duplicateN  s    > !"RWtBsG}-df= RWtBsG}- 47C((GsNtAw,,GsN   	 <<a	
<J%%tAwid4%H
f/r-   r   c                     Un[         R                  " US   US   /SS/S9nUR                  XRUS9nUR                  SS/SUS9n[        R                  " Xg5        g )Nr   r   rJ   r   F)r   rL   r:   rM   rN   )r;   r,   r   r   r*   r   rO   rP   s           r+   test_set_index_pass_multiindex+TestSetIndex.test_set_index_pass_multiindex  sf     !%%r#w3&8c
Kdf= <<c
v<F
f/r-   c                 t   [        [        S5      S-  SS9n[        [        R                  R                  S5      R                  S5      UR                  S.5      nUR                  S5      n[        R                  " UR                  U5        [        [        R                  R                  S5      R                  S5      US.5      nUR                  S5      n[        R                  " UR                  U5        UR                  5       R                  S5      n[        R                  " UR                  U5        g )Nabr   r   r|   r   rA   rn   )r   r   r   r&   r'   r(   r)   ra   r:   rM   r   r<   r   )r;   cir*   rr   s       r+   (test_construction_with_categorical_index5TestSetIndex.test_construction_with_categorical_index  s    d4j1n37 ))''*::2>RYYO
 ll3
cii, RYY2215EEbIPRSTll3
cii, oo))#.
cii,r-   c                 \   [        / SQ/ SQ[        [        S5      [        S5      SS9[        [        S5      [        S5      SS9S.5      nS	S
SS	/SS
/S	S
/4 HQ  nUR                  U5      R	                  5       nUR                  UR                  S9n[        R                  " X15        MS     g )N)r7   r   r7   r7   r   )rA            "   abaabbacF)
categoriesorderedT)r   r   C1C2r   r   r   rH   )	r   r   r   r:   r   reindexrI   rM   rN   )r;   r*   colsrO   s       r+   )test_set_index_preserve_categorical_dtype6TestSetIndex.test_set_index_preserve_categorical_dtype  s    $)!$w-DKQVW!$w-DKQUV	
 4#tsDkD$<HD\\$'335F^^BJJ^7F!!&- Ir-   c                     [        / SQ/ SQ[        S5      S.5      n[        UR                  S5      SS9Ul        UR                  R                  S5      Ul        [        / S	QSS
9nUR                  S5      R                  S5      nUR                  SSS9n[        R                  " UR                  R                  S   U5        [        R                  " UR                  R                  S   [        SS/SS
95        UR                  R                  SS/:X  d   eUR                  SS5      n[        R                  " UR                  R                  S   [        SS/SS
95        [        R                  " UR                  R                  S   U5        UR                  R                  SS/:X  d   e[        [        R                   R#                  S5      R!                  S5      5      n[        / SQSS9n[        / SQSS9n[%        SSSS9nUR'                  S 5      nUR                  U5      nUR                  USS9nUR                  USS9n[        / S	QSS9n[        SS/SS9n[        R                  " UR                  R                  S   U5        [        R                  " UR                  R                  S   U5        [        R                  " UR                  R                  S   U5        [        R                  " UR                  R)                  S5      U5        [        R                  " UR                  R)                  S5      U5        [        R                  " UR                  R)                  S5      U5        g )N)r   r   r   r   r   r   )2011-07-19 07:00:002011-07-19 08:00:002011-07-19 09:00:00r   r   r   r4   )r%   r   valuer   T)utcrw   )r   r   r   r|   re   r%   r   r   r7   r   r   r   z
US/Easternrf   )2012-04-01 09:00r  r  2012-04-02 09:00r  r  z2011-01-01 09:00z
Asia/Tokyo)rx   rg   r  r  )r   ro   r   popr<   rh   r	   tz_localizer:   rM   r   levelsr
   rK   	swaplevelr&   r'   r(   r   r   get_level_values)r;   r*   rP   idx1r   idx3	expected1	expected2s           r+   test_set_index_datetime$TestSetIndex.test_set_index_datetime  s   7 q
 rvvj1t<88&&|4 Q
 ''.99,G\\'$\/
bhhooa0(;
bhhooa0%c
2QRxx~~*g!6666\\!Q
bhhooa0%c
2QR
bhhooa0(;xx~~':!6666ryy,,Q/66q9: 

  

 ,aLIt$\\$\\$t\,\\$t\,!Q
	 "!34
	 	bhhooa0)<
bhhooa0)<
bhhooa0$7 	bhh77:DA
bhh77:DA
bhh77:DAr-   c                    [        [        R                  R                  S5      R                  S5      5      n[	        SSSS9nUR                  U5      n[	        SSSS9nUR                  U5      R                  U5      n[	        S	SS
S9nUR                  U5      nUR                  USS9nUR                  USS9n[	        SSSS9n[	        SSSS9n[        R                  " UR                  R                  S   U5        [        R                  " UR                  R                  S   U5        [        R                  " UR                  R                  S   U5        [        R                  " UR                  R                  S5      U5        [        R                  " UR                  R                  S5      U5        [        R                  " UR                  R                  S5      U5        g )Nr   r4   z
2011-01-01r2   Mrx   ry   z2013-01-01 09:00rv   2005YTr  r   r7   )r   r&   r'   r(   r   r   r:   rM   r   r<   r  r
  )r;   r*   r  r   r  r  r  s          r+   test_set_index_period"TestSetIndex.test_set_index_period  s{   ryy,,Q/66q9:L!#>{{4 .D{{4 ''-FAC8\\$\\$t\,\\$t\, qsC	 !3QSI	
bhhooa0)<
bhhooa0)<
bhhooa0$7
bhh77:DA
bhh77:DA
bhh77:DAr-   r   N)#__name__
__module____qualname____firstlineno__r=   rQ   r]   rb   rk   rs   r   r   r   r   markparametrizer   r   r   r   r   r
   r&   r   r   r   r   r   r   r   r   r   r  r  __static_attributes__r   r-   r+   r/   r/   :   sV   	0$	106	4(&# IF [[Vc3c
<T%UV[[Yu6[[VdE]30 4 7 W0( [[Vc3c
<T%UV[[VdE]30 4 W0 [[Vc3c
<T%UV[[VdE]3	0 4 W	00 [[HH1	

 [[X [[VdE]34 4
48 [[rxx/TU [[O [[VdE]30 4	0. [[HH1	
 [[HH1	
 [[X [[VdE]30 480@ [[Xe}5[[VdE]3	0 4 6	0-&.PBdBr-   r/   c                   \   \ rS rSrS r\R                  R                  SSS/5      \R                  R                  SSS/5      S 5       5       r\R                  R                  SSS/5      \R                  R                  SSS/5      S 5       5       r	\R                  R                  S	\
\\R                  \S
 // SQS9\R                  R                  SSS/SS/S9\R                  R                  SSS/5      \R                  R                  SSS/5      S 5       5       5       5       rSrg)TestSetIndexInvalidi$  c                    UnSn[         R                  " [        SS9   [        R                  " [
        US9   UR                  SSS9  S S S 5        S S S 5        [         R                  " [        SS9   [        R                  " [
        US9   UR                  US   US   /SS9  S S S 5        S S S 5        g ! , (       d  f       Ns= f! , (       d  f       N|= f! , (       d  f       N9= f! , (       d  f       g = f)Nz5The 'verify_integrity' keyword in DataFrame.set_indexzIndex has duplicate keysr   r   T)verify_integrity)r   r   r   rM   assert_produces_warningr   r:   )r;   r,   r*   r   s       r+   test_set_index_verify_integrity3TestSetIndexInvalid.test_set_index_verify_integrity%  s     E]]:-GH++N#FS48 G I ]]:-GH++N#Fbgr#w/$G G IH GF IH
 GF IHsF   CB6	C2C)C%C)6
C	 C
C
C&	"C))
C7r   TFr   c           	      v   Un[         R                  " [        SS9   UR                  / SQX#S9  S S S 5        [         R                  " [        SS9   UR                  US   US   S/X#S9  S S S 5        Sn[         R                  " [        US9   UR                  [	        US   5      X#S9  S S S 5        [         R                  " [        US9   UR                  SUS   [	        US   5      /X#S9  S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nu= f! , (       d  f       g = f)	Nz['foo', 'bar', 'baz']r   )r   r   bazr   Xr   r   z%[('foo', 'foo', 'foo', 'bar', 'bar')])r   r   r   r:   r#   )r;   r,   r   r   r*   r   s         r+   test_set_index_raise_keys-TestSetIndexInvalid.test_set_index_raise_keys1  s     !]]8+BCLL.TLI D
 ]]83/LL"S'2c7C0tLK 0 6]]83/LLr#wdLB 0 ]]83/LL#r#wbg7dLR 0/ DC
 0/
 0/ 0/s/   C7DD#D*7
D
D
D'*
D8c           	      T   [         nUnSn[        R                  " [        US9   UR	                  U" US   5      X#S9  S S S 5        [        R                  " [        US9   UR	                  SUS   U" US   5      /X#S9  S S S 5        g ! , (       d  f       NP= f! , (       d  f       g = f)N,The parameter "keys" may be a column key, .*r   r   r   )setr   r   	TypeErrorr:   )r;   r,   r   r   r   r*   r   s          r+   test_set_index_raise_on_type0TestSetIndexInvalid.test_set_index_raise_on_typeG  s      <]]9C0LLRWDL@ 1 ]]9C0LL#r#wBsG5DLP 10	 10 10s   B B
B
B'r   c                 0    [         R                  " U /5      $ r   r   r   s    r+   r   TestSetIndexInvalid.<lambda>Y  s    *2H2H!2Mr-   )r   r
   znp.arrayr   r   )idslengthr3   r4   	too_shorttoo_longc                    Un[         R                  R                  S5      R                  SSU45      nSn[        R
                  " [        US9   UR                  U" U5      XES9  S S S 5        [        R
                  " [        US9   UR                  SUR                  U" U5      /XES9  S S S 5        g ! , (       d  f       NT= f! , (       d  f       g = f)Nr   r   rA   z<Length mismatch: Expected 5 rows, received array of length.*r   r   r   )	r&   r'   r(   integersr   r   r   r:   r   )	r;   r,   r   r4  r   r   r*   ra   r   s	            r+   test_set_index_raise_on_len/TestSetIndexInvalid.test_set_index_raise_on_lenW  s     !&&q)221b6)DL ]]:S1LLV4L? 2 ]]:S1LL#rttS[1LL 21	 21 21s   B4$C4
C
Cr   N)r  r  r  r  r$  r   r  r  r)  r/  r   r
   r&   r   r   r9  r  r   r-   r+   r   r   $  s?   
H [[Xe}5[[VdE]3S 4 6S( [[Xe}5[[VdE]3Q 4 6Q [[	$(MNA  
 [[X1vK3LM[[Xe}5[[VdE]3M 4 6 NMr-   r   c                   ,    \ rS rSrS rS rS rS rSrg)TestSetIndexCustomLabelTypeir  c                 X    " S S5      nU" SS5      nU" SS5      n[        USS/US	S
/05      n[        USS/0[        S	S
/US9S9nUR                  U5      n[        R                  " Xe5        UR                  U/5      n[        R                  " Xe5        U" SS5      nSn[
        R                  " [        US9   UR                  U5        S S S 5        [
        R                  " [        US9   UR                  U/5        S S S 5        g ! , (       d  f       NC= f! , (       d  f       g = f)Nc                   0    \ rS rSrSS jrS\4S jr\rSrg)KTestSetIndexCustomLabelType.test_set_index_custom_label_type.<locals>.Thingiv  returnNc                     Xl         X l        g r   r}   colorr;   r}   rC  s      r+   __init__TTestSetIndexCustomLabelType.test_set_index_custom_label_type.<locals>.Thing.__init__w       	"
r-   c                 $    SU R                   < S3$ Nz<Thing >r|   r;   s    r+   __str__STestSetIndexCustomLabelType.test_set_index_custom_label_type.<locals>.Thing.__str__{       Q//r-   rC  r}   r@  N)	r  r  r  r  rE  r   rL  __repr__r  r   r-   r+   Thingr?  v  s    #0 0 Hr-   rR  OneredTwobluer   r7   r   r2   r|   r~   Threepinkz<Thing 'Three'>r   )r   r
   r:   rM   rN   r   r   r   	r;   rR  thing1thing2r*   rP   rO   thing3r   s	            r+    test_set_index_custom_label_type<TestSetIndexCustomLabelType.test_set_index_custom_label_types  s	   		 		 ue$uf%AA78fq!f-UAq65OP f%
f/ vh'
f/ w']]83/LL  0 ]]83/LL&" 0/	 0/ 0/s   ;D
.D

D
D)c                 h    " S S[         5      nU" SS/5      nU" SS/5      n[        USS/US	S
/05      n[        USS/0[        S	S
/US9S9nUR                  U5      n[        R
                  " Xe5        UR                  U/5      n[        R
                  " Xe5        U" SS/5      nSn[        R                  " [        US9   UR                  U5        S S S 5        [        R                  " [        US9   UR                  U/5        S S S 5        g ! , (       d  f       NC= f! , (       d  f       g = f)Nc                   "    \ rS rSrS\4S jrSrg)XTestSetIndexCustomLabelType.test_set_index_custom_label_hashable_iterable.<locals>.Thingi  r@  c                 b    [        U 5      nSR                  [        [        U5      5      nSU S3$ )Nz, zfrozenset({z}))sortedjoinr   repr)r;   tmpjoined_reprss      r+   rQ  aTestSetIndexCustomLabelType.test_set_index_custom_label_hashable_iterable.<locals>.Thing.__repr__  s.    Tl#yyT38%l^377r-   r   N)r  r  r  r  r   rQ  r  r   r-   r+   rR  ra    s    8# 8r-   rR  rS  rT  rU  rV  r   r7   r   r2   r|   r~   rW  rX  z frozenset\(\{'Three', 'pink'\}\)r   )		frozensetr   r
   r:   rM   rN   r   r   r   rY  s	            r+   -test_set_index_custom_label_hashable_iterableITestSetIndexCustomLabelType.test_set_index_custom_label_hashable_iterable  s   	8I 	8 u~&v'AA78fq!f-UAq65OP f%
f/ vh'
f/ ()1]]83/LL  0 ]]83/LL&" 0/	 0/ 0/s   D6D#
D #
D1c                 ~    " S S[         5      nU" SS5      nU" SS5      n[        SS/S	S
//X#/S9nSn[        R                  " [        US9   UR                  U5        S S S 5        [        R                  " [        US9   UR                  U/5        S S S 5        g ! , (       d  f       NC= f! , (       d  f       g = f)Nc                   ,    \ rS rSrSS jrS\4S jrSrg)RTestSetIndexCustomLabelType.test_set_index_custom_label_type_raises.<locals>.Thingi  r@  Nc                     Xl         X l        g r   rB  rD  s      r+   rE  [TestSetIndexCustomLabelType.test_set_index_custom_label_type_raises.<locals>.Thing.__init__  rG  r-   c                 $    SU R                   < S3$ rI  r|   rK  s    r+   rL  ZTestSetIndexCustomLabelType.test_set_index_custom_label_type_raises.<locals>.Thing.__str__  rN  r-   rO  rP  )r  r  r  r  rE  r   rL  r  r   r-   r+   rR  rn    s    #0 0r-   rR  rS  rT  rU  rV  r   r   r7   r2   rH   r,  r   )r-  r   r   r   r.  r:   )r;   rR  rZ  r[  r*   r   s         r+   'test_set_index_custom_label_type_raisesCTestSetIndexCustomLabelType.test_set_index_custom_label_type_raises  s    	0C 	0 ue$uf%AA'&1AB<]]9C0LL  1 ]]9C0LL&" 10	 10 10s   BB.
B+.
B<c                 f   [        [        R                  R                  S5      R                  S5      5      n[	        SSSS9n[	        SSSS9nUR                  U5      n[        R                  " UR                  U5        UR                  U5      n[        R                  " UR                  U5        g )Nr   r4   z
2011/01/01r  r  2013r  )	r   r&   r'   r(   r   r:   rM   r   r<   )r;   r*   r  r   s       r+   test_set_index_periodindex6TestSetIndexCustomLabelType.test_set_index_periodindex  s    ryy,,Q/66q9:L!#>FAC8\\$
bhh-\\$
bhh-r-   r   N)	r  r  r  r  r]  rj  rs  rw  r  r   r-   r+   r<  r<  r  s    $#L%#N#4	.r-   r<  )__doc__r   r   numpyr&   r   pandas.errorsr   pandasr   r   r   r	   r
   r   r   r   r   r   pandas._testing_testingrM   fixturer,   r/   r   r<  r   r-   r+   <module>r     sp   
   (     6gB gBTKM KM\q. q.r-   