
    bMho                     r   d dl mZ 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Z	d dl
Z
d dlmZ d dlmZ d dlmc mZ d dlmZmZ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# d dl$m%Z& d d	l'm(Z(m)Z)m*Z*m+Z+m,Z,  G d
 d          Z- G d d          Z. G d d          Z/e
j0        1                    dg d          d             Z2e
j0        1                    d eedg           eedg           eedg           ee dg           ee e3d                     ee ej4        d d          g           ee(dge5           ee)dgd g          g          d             Z6d Z7d Z8e
j0        1                    dde	j9        e	j:        e	j;        g          d             Z<e
j0        1                    d e(i ggd! e&j=        D             ei ge i ged"d#ig          d$             Z>e
j0        1                    d%ej?        ej@        g          d&             ZA ejB        d'          d(             ZCdS ))    )defaultdict)datetime)partialN)IS64)InvalidIndexError)is_any_real_numeric_dtypeis_numeric_dtypeis_object_dtype)CategoricalIndex	DataFrameDatetimeIndexIntervalIndexPeriodIndex
RangeIndexSeriesTimedeltaIndex
date_rangeperiod_rangetimedelta_range)Index
MultiIndex_get_combined_indexensure_indexensure_index_from_sequencesc                      e Zd Zej        defd            Zd Zej        	                    ddgd          d             Z
d	 Zej        	                    dd
gd          d             Zd Zej        	                    dddg          ej        	                    d eddddd           eddd           eddd           eddd          g          d                         Zej        	                    d edddd          df eddd          df eddd          dfg          d             Zd Zd Zd Zej        	                    deej        ej        fed ej        fg          d!             Zej        	                    d"g d#d$fd%ej        d&d'gd(fd)d*d+ej        gd,fg          d-             Zej        	                    d.d/d0g          ej        	                    d1eeg          d2                         Zej        	                    d.d/d0g          ej        	                    d1eeg          d3                         Z ej        	                    d4g  e!g           d5 d6D             g          ej        	                    d1ee"eeg          d7                         Z#ej        	                    d8 e$g d9          e$f e$ e!g           d9          e$f e$d: d6D             d9          e$f e%d;<          e%f e&d;d=gd>d?ggg g g@          e&fg          dA             Z'ej        	                    dg dBd          dC             Z(ej        	                    dd
 ej)        dDej        *                    dEF          G          dHdIdJgd          dK             Z+ej        	                    dg dLd          dM             Z,dN Z-ej        	                    dO edPdQg           eg dR          g dSg          dT             Z.dU Z/dV Z0dW Z1ej        	                    dd
gd          dX             Z2dY Z3ej        	                    dg dZd          ej        	                    d[e4ej5        g          d\                         Z6ej        	                    dg dZd          d]             Z7d^ Z8d_ Z9d` Z:ej        	                    d edaddb           edaddb           edcdbd          g          de             Z;df Z<ej        	                    dgdh di g          dj             Z=ej        	                    dgdk dl g          ej        >                    dm          dn                         Z?ej        	                    dg e@g dog dpq          drdsdtdpg          du             ZAdv ZBdw ZCej        	                    dxdydzg          d{             ZDej        	                    d|g d}dg          d~             ZEej        	                    d|g ddg          d             ZFd ZGd ZHej        	                    dg dg dSg          d             ZIej        	                    dddg          d             ZJej        	                    dg dd          d             ZKej        	                    dg dd          ej        	                    ddrdgddgg          d                         ZLej        	                    dg dd          d             ZMd ZNd ZOej        	                    dd eg d          fg d ed;d=g          fg          d             ZPej        	                    d/g dg dg dg          ej        	                    dddPgdPdgg          d                         ZQej        >                    dm          d             ZRej        	                    d.g d          d             ZSej        	                    d/g dh dg          ej        	                    d eg d           ejT        g d          f eg            ejT        g eU          fg          d                         ZVd ZWd ZXej        	                    dddg          ej        	                    d eg d           eg dej                  g          d                         ZYd ZZej        	                    ddddej        g          d             Z[ej        	                    dJg  e@e\           ejT        g           g          d             Z]d Z^ej        	                    d/g dg dg dg d eddd          g          d             Z_ej        	                    dd
gd          ej        	                    dddg          d                         Z`d Zaej        	                    dg dd          d             Zbej        	                    dg dĢ          dń             Zcej        	                    d e eddƦ                     edadbd           e&je        ddg           edddˬ̦          g          d̈́             Zfej        	                    dd eg dSddgdgg          fd eg dSddgdgg          fd e&je        dSddej        fdej        ej        fg          fg          dӄ             ZgdԄ ZhdՄ Ziej        	                    d e ejd֦                    df e edd                    dfg          dׄ             Zkd؄ Zldل Zmdڄ Zndۄ Zod܄ Zpej        	                    dddg          ej        	                    dg  ejT        g           g dߢg d ejT        g dߢ           ejT        g d           eddd          jq         eddd          r                                g          d                         Zsej        	                    dg  ejT        g            ejT        g ejt                  g          d             Zuej        	                    d eg           ejv        fg          d             Zwd Zxd Zyd Zzd Z{ej        	                    d e&je        ddg           ejT        ddg          f e&je        ddg           ejT        ddg          fg          d             Z|d Z}ej        	                    d e&je        g d           eg d          g          d             Z~d Zej        	                    dej        ddgfej        ddgfg          d             Zd Zd Zd Zd Zd Zej        	                    dd;ej        dbdbdbdbgfd=ej        ej        d d d gfdej        ej        ej        ddgfg          d             Zej        	                    ddg dfd;g dfd=g dfg          d             ZdS (  	TestIndexreturnc                 :    t          t          d                    S )Nabcde)r   listselfs    ^/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/indexes/test_base.pysimple_indexzTestIndex.simple_index.   s    T']]###    c                 L    |}|d         }|                     |          du sJ d S )Nr   T)$_can_hold_identifiers_and_holds_name)r"   r$   indexkeys       r#   test_can_hold_identifiersz#TestIndex.test_can_hold_identifiers2   s5    Ah99#>>$FFFFFFr%   r(   r   T)indirectc                     t          j        t          d          5  |d d d f          d d d            d S # 1 swxY w Y   d S )NMulti-dimensional indexingmatch)pytestraises
ValueErrorr"   r(   s     r#   test_new_axiszTestIndex.test_new_axis7   s     ]:-IJJJ 	 	$'NN	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	   6::c                 0    t          j        ||           d S N)tmassert_contains_allr3   s     r#   test_constructor_regularz"TestIndex.test_constructor_regular?   s    
ue,,,,,r%   stringc                     t          j        |          }t          |          }t          j        ||           t          j        ||           d S r7   )nparrayr   r8   r9   assert_index_equal)r"   r(   arr	new_indexs       r#   test_constructor_castingz"TestIndex.test_constructor_castingB   sH     huoo#JJ	
sI...
eY/////r%   c                    t          t          d          d          }t          j        |          }t          |dd          }t	          |t                     sJ |j        dk    sJ |r/t          j        |j        t          j        |d                     nt          j
        ||j                   d|d	<   |d	         dk    sJ d S )
NabcnamerE   TcopyrE   strdtypeSOMEBIGLONGSTRINGr   )r   r    r=   r>   
isinstancerE   r8   assert_extension_array_equalvaluespdassert_numpy_array_equal)r"   using_infer_stringr(   r@   rA   s        r#   test_constructor_copyzTestIndex.test_constructor_copyJ   s    d5kk///huoo#Dv666	)U+++++~'''' 	?+ "(3e"<"<"<    'Y-=>>>$A|2222222r%   cast_as_objFz2015-01-01 10:00D   z
US/EasternzGreen Eggs & Ham)freqperiodstzrE   )rW   rX   1 daysz
2015-01-01c                 0   |r[t          j        t          d          5  t          |                    t
                              }d d d            n# 1 swxY w Y   nt          |          }t          j        ||           t          |t                    r{|j	        |j	        k    sJ |ri|t          j        d          z  }t          |t
                    }|j        t          j        k    sJ t          |          t          |          k    sJ d S d S d S )NzDtype inferencer.   2   )nanosecondsrJ   )r8   assert_produces_warningFutureWarningr   astypeobjectr?   rM   r   rY   rP   	TimedeltarK   r=   object_r    )r"   rT   r(   results       r#   "test_constructor_from_index_dtlikez,TestIndex.test_constructor_from_index_dtlikeY   sZ   "  	"+MARSSS 5 5u||F33445 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5\\F
fe,,,e]++ 		39(((( 3 "5555uF333|rz1111F||tE{{2222		3 		33 3 32s   (AAAzindex,has_tz)rW   rX   rY   c                     t          t          |                    }t          j        ||           |r|j        |j        k    sJ d S d S r7   )r   r   r8   r?   rY   )r"   r(   has_tzrd   s       r#   #test_constructor_from_series_dtlikez-TestIndex.test_constructor_from_series_dtlike}   sW     ve}}%%
fe,,, 	)9((((	) 	)((r%   c                     g d}t          |d          }t          t          j        |                    }t          |d          }t	          j        ||           d S )Nz1-1-1990z2-1-1990z3-1-1990z4-1-1990z5-1-1990MSrW   )r   r   rP   to_datetimer8   r?   )r"   dtsexpectedsrd   s        r#   !test_constructor_from_series_freqz+TestIndex.test_constructor_from_series_freq   sd     KJJ 40002>#&&''qt,,,
fh/////r%   c                    g d}t          |d          }t          t          j                            d                              d                    }||d<   t          |d         d          }|st
          nd}|d         j        |k    sJ d|_        t          j	        ||           t          |d          }t          j        |d         |           |s"t          j        |d                   }|dk    sJ d S d S )	Nrj   rk   rl      )   rV   daterI   rF   )r   r   r=   randomdefault_rngra   rK   rE   r8   r?   r   assert_series_equalrP   
infer_freq)r"   rR   rn   ro   dfrd   rK   rW   s           r#   'test_constructor_from_frame_series_freqz1TestIndex.test_constructor_from_frame_series_freq   s    KJJ 4000ry,,Q//66v>>??6
r&z5550;e&z5((((
fh///#F+++
r&z8444 " 	 =F,,D4<<<<	  	   <r%   c                     t           j        g}t          |t           j                  }t          |d          }t	          j        ||           d S )NrJ   float)r=   nanr   float64r8   r?   )r"   dataro   rd   s       r#   test_constructor_int_dtype_nanz(TestIndex.test_constructor_int_dtype_nan   sJ    xRZ000t7+++
fh/////r%   zklass,dtype,na_valzdatetime64[ns]c                     ||g} ||          }|j         |k    sJ t          |          }t          j        ||           t          t	          j        |                    }t          j        ||           d S r7   )rK   r   r8   r?   r=   r>   )r"   klassrK   na_valna_listro   rd   s          r#   test_index_ctor_infer_nan_natz'TestIndex.test_index_ctor_infer_nan_nat   s|     6"5>>~&&&&w
fh///rx(())
fh/////r%   z
vals,dtype   rs   rV      rt   intg?g@      @r}   ABCobjc                     t          ||          }|                    |j        |          }t          j        ||           d S )NrF   )r   _simple_newrO   r8   r?   )r"   valsrK   r(   rd   s        r#   test_constructor_simple_newz%TestIndex.test_constructor_simple_new   sF     d'''""5<77
fe,,,,,r%   attrrO   asi8r   c                    t          dd          }t          ||          }|                    |          }|j        }|d u}d}|dk    r8t	          |                              |          }	t          j        |	|           nl|t          u rAt          j	        t          d          5   |||           d d d            n# 1 swxY w Y   n" |||          }	t          j        |	|           |dk    r|rVt          j	        t          |          5  t	          |                              |           d d d            n# 1 swxY w Y   nZt	          |                              |          }	t          j        |	|           n" |||	          }	t          j        |	|           |dk    rEt	          t          |                                        |          }	t          j        |	|           ny|t          u rAt          j	        t          d          5   |||           d d d            n# 1 swxY w Y   n/ |t          |          |          }	t          j        |	|           |dk    r|ret          j	        t          |          5  t	          t          |                                        |           d d d            d S # 1 swxY w Y   d S t	          t          |                                        |          }	t          j        |	|           d S  |t          |          |	          }	t          j        |	|           d S )
N
2011-01-01rt   rX   z:Cannot use .astype to convert from timezone-naive dtype tor   zunexpected keywordr.   )rY   rJ   )r   getattrtz_localizerK   r   r8   r?   r   r0   r1   	TypeErrorr`   r    )
r"   tz_naive_fixturer   r   r(   argrK   errmsgrd   s
             r#    test_constructor_dtypes_datetimez*TestIndex.test_constructor_dtypes_datetime   sJ    <333eT""!!"233 d*J6>>"3''334DEEF!&%0000e^^y0DEEE 0 0c.////0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 U3#3444F!&%0006>> 5]9C888 5 5!#&&--e4445 5 5 5 5 5 5 5 5 5 5 5 5 5 5 's++22599%fe4444U3e,,,F!&%0006>>"499--99:JKKF!&%0000e^^y0DEEE 0 0c.////0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 U499)9:::F!&%0006>> 5]9C888 ; ;!$s)),,33E:::; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 'tCyy1188??%fe44444U499E222F!&%00000sH   &C  CC#E  EEH//H36H30K

KKc                 "   t          dd          }|                    d           }|j        }t          ||          } |||          }t	          j        ||            |t          |          |          }t	          j        ||           d S )NrZ   rt   r   rJ   )r   
_with_freqrK   r   r8   r?   r    )r"   r   r   r(   rK   rO   rd   s          r#   !test_constructor_dtypes_timedeltaz+TestIndex.test_constructor_dtypes_timedelta  s      !444  &&%%vU+++
fe,,,tF||5111
fe,,,,,r%   valuec              #      K   | ]}|V  d S r7    .0_s     r#   	<genexpr>zTestIndex.<genexpr>#  s      __Aa______r%   r   c                 b     ||          }t          ||          sJ t          |          rJ d S r7   rM   len)r"   r   r   emptys       r#   test_constructor_emptyz TestIndex.test_constructor_empty#  s?     e%'''''u::r%   zempty,klassrl   c              #      K   | ]}|V  d S r7   r   r   s     r#   r   zTestIndex.<genexpr>7  s      !r%   r   )steprs   blueredlevelscodesc                 L    t          ||          sJ t          |          rJ d S r7   r   )r"   r   r   s      r#   test_constructor_empty_specialz(TestIndex.test_constructor_empty_special2  s2     %'''''u::r%   )r   r   float32int64int32periodrangerepeats	timedeltatuplesuint64uint32c                 0    |                     d           d S )Ni8)viewr3   s     r#   test_view_with_argszTestIndex.test_view_with_args@  s    & 	

4r%   categoricalzgh-25464reason)marksbool-object
bool-dtyper   c                 V   |j         t          k    rMd}t          j        t          |          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            d S # 1 swxY w Y   d S )NzWhen changing to a larger dtyper.   r   zCannot change data-type for array of references\.|Cannot change data-type for object array\.|Cannot change data-type for array of strings\.|)rK   boolr0   r1   r2   r   r   r"   r(   r   s      r#   'test_view_with_args_object_array_raisesz1TestIndex.test_view_with_args_object_array_raisesU  s9    ;$3Cz555 ! !

4   ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !C 
 y444 ! !

4   ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !s#   AAA;BB"%B")r   r   r   c                     |                     d          }|                    d           d|_        |                     d          }|j        dk    sJ d S )Nr   rt   foobar)r`   get_locrE   )r"   r(   casteds      r#   test_astypezTestIndex.test_astypen  s\     d## 	q 
d##{h&&&&&&r%   c                 p    t          g d                              t          g d                    sJ d S Nabcr   equalsr!   s    r#   test_equals_objectzTestIndex.test_equals_object~  s:    ___%%,,U???-C-CDDDDDDDr%   compr   r   )r   r   dr   c                 R    t          g d                              |          rJ d S r   r   )r"   r   s     r#   test_not_equals_objectz TestIndex.test_not_equals_object  s0     ))006666666r%   c                    t          g d          }t          g d          }|                    |          sJ |                    d          }|                    |          sJ |                    |          rJ |                    d          }|                    |          sJ t          g d          }t          g dd          }|                    |          rJ d S )Nr   foo)r   r   r   r   )r   r   F)tupleize_cols)r   	identicalrenamer   )r"   i1i2i3i4s        r#   test_identicalzTestIndex.test_identical  s    ???##???##||BYYuyy}}<<#####YYu||B77788777uMMM<<#######r%   c                    t          t          d                    }|                    |          sJ |                    |                                                                                                                                          sJ |                    t          t          d                              rJ |                    |                                          rJ |                    |                    d                    rJ |                    |d d                    rJ |                    t          j        t          d                              rJ |                    |                                          sJ |                                }d|_        |                    |          sJ |                    |          sJ |                    t          |j                            rJ t          j        t          dd                    }t          |d          }t          |d          }|                    |          rJ d S )N
   F)deepbobr      rH   )	r   r   is_r   rH   r=   r>   rE   rO   )r"   indind2r@   ind1s        r#   test_is_zTestIndex.test_is_  s   E"IIwws||wwsxxzz((--//446677777775r++,,,,,77388::&&&&&773888//00000773qqq6??"""7728E"II..///// wwsxxzz"""""xxzz	wwt}}xx}}775,,-----huQ||$$Su%%%Su%%%88D>>!!!!!r%   c                    t          g d          }t          ddgt                    }d}t          j        t          |          5  |                    |d                    d d d            n# 1 swxY w Y   t          j        t          t          j        t          |                              5  |                    |           d d d            n# 1 swxY w Y   t          j        t          t          j        t          |                              5  |                    |           d d d            d S # 1 swxY w Y   d S )Nr   rs   rV   TFrJ   z$Cannot compare dtypes int64 and boolr.   r   )
r   ra   r0   r1   r   asofr   reescaperI   )r"   leftrightr   s       r#    test_asof_numeric_vs_bool_raisesz*TestIndex.test_asof_numeric_vs_bool_raises  s   YYYtUm62224]9C000 	  	 IIeAh	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  ],BIc%jj4I4IJJJ 	 	IIe	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ],BIc$ii4H4HIII 	 	JJt	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s6   A//A36A34CCCD>>EEc                 `   t          j        t          |          t                    }d|ddd<   ||         }t	          |          D ] \  }}|                    |          |k    sJ !|t          |                   }t	          |          D ] \  }}|                    |          |k    sJ !d S )NrJ   Frt      rs   )r=   onesr   r   	enumerater   r    )r"   r(   
bool_index	sub_indexivals         r#   test_booleanindexzTestIndex.test_booleanindex  s    WSZZt444
"
1R6*%		** 	/ 	/FAs$$S))Q.....$z**+		** 	/ 	/FAs$$S))Q.....	/ 	/r%   c                 j    |}|g d         }|D ]#}|||                     |                   k    sJ $d S )Nr   )r   )r"   r$   r(   slr  s        r#   
test_fancyzTestIndex.test_fancy  sQ    999 	* 	*A2::a==))))))	* 	*r%   )r;   r   r   r   r   r   r   rK   c                 H   |t           j        u r@|r>|j        dk    r3|                    t          j                            d                     t          j        g |          } t          |          g |j                  }|g          	                    |          sJ |t           j        k    rTt          j        t          d          5  ||         	                    |          sJ 	 d d d            d S # 1 swxY w Y   d S ||         	                    |          sJ d S )Nr;   znumpy behavior is buggyr   rJ   zis deprecatedr.   )r=   bool_rK   applymarkerr0   markxfailr>   typer   r8   r^   r_   )r"   r(   rK   requestrR   	empty_arrempty_indexs          r#   test_empty_fancyzTestIndex.test_empty_fancy  si    BH!3x8O8O 1 19R 1 S STTTHRu---	!d5kk"EK888Ry"";/////BH+MQQQ ? ?Y'11+>>>>>>? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #--k:::::::s   C88C<?C<c                 :   t          j        g t           j                  } t          |          g |j                  }|g                              |          sJ d}t          j        t          |          5  ||          d d d            d S # 1 swxY w Y   d S )NrJ   z)arrays used as indices must be of integerr.   )	r=   r>   r   r  rK   r   r0   r1   
IndexError)r"   r(   
empty_farrr  r   s        r#   test_empty_fancy_raisesz!TestIndex.test_empty_fancy_raises  s     Xb
333
!d5kk"EK888Ry"";/////:]:S111 	 	*	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   :	BBBc                    |}t          dd          }|                    |          }|                    |          }t          t          j        ||                    d                              }t          j        ||           t          j        ||           t          j        ||           t          j        ||           t          j        ||           d S )Nz
2019-01-01r   r   O)	r   unionr   r=   appendr`   r8   r?   r9   )r"   r$   r(   
date_index	first_cat
second_catappendeds          r#   test_union_dt_as_objzTestIndex.test_union_dt_as_obj  s    b999
KK
++	[[''
5**;*;C*@*@AABB
i222
j%000
ui000
uj111
z955555r%   c                 z   t          t          j        d          t          j                  }|                    d           }t          d |D                       }t          j        ||           |                    d           }t          j        d |D                       }t          j        ||           d S )NrV   rJ   c                     | fS r7   r   xs    r#   <lambda>z0TestIndex.test_map_with_tuples.<locals>.<lambda>  s    aT r%   c                     g | ]}|fS r   r   r   r  s     r#   
<listcomp>z2TestIndex.test_map_with_tuples.<locals>.<listcomp>  s    ...11$...r%   c                     | | dk    fS Nr   r   r'  s    r#   r)  z0TestIndex.test_map_with_tuples.<locals>.<lambda>  s    aa[ r%   c                     g | ]
}||d k    fS )r   r   r+  s     r#   r,  z2TestIndex.test_map_with_tuples.<locals>.<listcomp>  s     *F*F*F1AqAv;*F*F*Fr%   )	r   r=   aranger   mapr8   r?   r   from_tuplesr"   r(   rd   ro   s       r#   test_map_with_tupleszTestIndex.test_map_with_tuples  s    
 bill"(333>>**.....//
fh/// 0011)*F*F*F*F*FGG
fh/////r%   c                     g d}t          j        t          |g d                    }|                    d           }t	          j        |t          |                     d S )Nr   barbazr   c                     | d         S Nr   r   r'  s    r#   r)  z3TestIndex.test_map_with_tuples_mi.<locals>.<lambda>  s
    !A$ r%   )r   r2  zipr1  r8   r?   r   )r"   first_levelmulti_indexreduced_indexs       r#   test_map_with_tuples_miz!TestIndex.test_map_with_tuples_mi  sa     ,++ ,Siii-H-HII#77
mU;-?-?@@@@@r%   
2020-01-01r   1 dayr   c                     t          dgdz            }|                    d           }t          j        ||           d S )Nr   r   c                     dS r.  r   r'  s    r#   r)  zATestIndex.test_map_tseries_indices_return_index.<locals>.<lambda>)  s    Q r%   )r   r1  r8   r?   r"   r(   ro   rd   s       r#   %test_map_tseries_indices_return_indexz/TestIndex.test_map_tseries_indices_return_index  sA     !r??;;''
h/////r%   c                     t          t          ddd          d          }|                    d           }t          t	          j        dd	          d          }t          j        ||d
           d S )Nr@     h)rX   rW   hourlyrF   c                     | j         S r7   )hourr'  s    r#   r)  zGTestIndex.test_map_tseries_indices_accsr_return_index.<locals>.<lambda>0  s    !& r%   r   rJ   Texact)r   r   r1  r   r=   r0  r8   r?   )r"   r   rd   ro   s       r#   +test_map_tseries_indices_accsr_return_indexz5TestIndex.test_map_tseries_indices_accsr_return_index,  s    "|Rc:::
 
 

  0 0112W555HEEE
fhd;;;;;;r%   mapperc                 6    d t          | |          D             S )Nc                     i | ]\  }}||	S r   r   r   er  s      r#   
<dictcomp>z&TestIndex.<lambda>.<locals>.<dictcomp>7      "G"G"GDAq1a"G"G"Gr%   r;  rO   r(   s     r#   r)  zTestIndex.<lambda>7      "G"GC4F4F"G"G"G r%   c                 "    t          | |          S r7   r   rW  s     r#   r)  zTestIndex.<lambda>8      &"7"7 r%   c                     t          g d          }t          t          j        d          t          j                  }|                     ||j        |                    }t          j        ||           d S )Nr6  rV   rJ   )r   r=   r0  r   r1  rO   r8   r?   )r"   rO  ro   r(   rd   s        r#   test_map_dictlike_simplez"TestIndex.test_map_dictlike_simple4  sl     ...//bill"(33366(/599::
fh/////r%   c                 6    d t          | |          D             S )Nc                     i | ]\  }}||	S r   r   rR  s      r#   rT  z&TestIndex.<lambda>.<locals>.<dictcomp>E  rU  r%   rV  rW  s     r#   r)  zTestIndex.<lambda>E  rX  r%   c                 "    t          | |          S r7   rZ  rW  s     r#   r)  zTestIndex.<lambda>F  r[  r%   z3ignore:PeriodDtype\[B\] is deprecated:FutureWarningc                 ~   t          |t                    rt          j        d           n|j        st          j        d           t          j        t          |          ddt
          j                  }|j	        rt          g           }n}t          |j                  r|                    ||j                  }nLt          |          t          u r'|j        t          k    rt          ||j                  }nt          |          }|                     |||                    }t#          j        ||           d S )NzTested in test_categoricalzCannot map duplicated indexr   rJ   )rM   r   r0   skip	is_uniquer=   r0  r   r   r   r   r	   rK   _constructorr  ra   r1  r8   r?   )r"   r(   rO  r  rngro   rd   s          r#   test_map_dictlikezTestIndex.test_map_dictlikeB  s    e-.. 	7K45555 	7K5666iE

Ar:::; 		"RyyHHek** 	"))#U[)AAHH%[[E!!ekV&;&;S444HHSzzH66(E2233
fh/////r%   )r          @r8  )r   rs   rb  r(   r   rh  r8  c                     t          dt          j        dg          }t          g d                              |          }t	          j        ||           d S )Nrh  r   )rs   r   r   r   r=   r~   r1  r8   r?   )r"   rO  ro   rd   s       r#   )test_map_with_non_function_missing_valuesz3TestIndex.test_map_with_non_function_missing_valuesa  sR     #rvu-..yyy!!%%f--
h/////r%   c                     t          dt          j        dt          j        dg          }|                    d d          }|dz  }t	          j        ||           d S )Ng      ?rV   rt   c                     | dz  S )Nrs   r   r'  s    r#   r)  z1TestIndex.test_map_na_exclusion.<locals>.<lambda>o  s
    QU r%   ignore)	na_actionrs   rk  r3  s       r#   test_map_na_exclusionzTestIndex.test_map_na_exclusionl  sW    sBFArvq122??h??19
fh/////r%   c                     t          g d          }t          d           }d|d<   |                    |          }t          g d          }t          j        ||           d S )Nr   c                      dS )Nblankr   r   r%   r#   r)  z0TestIndex.test_map_defaultdict.<locals>.<lambda>u  s    7 r%   stuffr   )ru  rt  rt  )r   r   r1  r8   r?   )r"   r(   default_dictrd   ro   s        r#   test_map_defaultdictzTestIndex.test_map_defaultdicts  si    iii  "??33!Q<((44455
fh/////r%   zname,expected)r   r   )r7  Nc                     t          g d          }t          g d|          }d}t          j        t          |          5  |                    |          }d d d            n# 1 swxY w Y   |j        |k    sJ d S )Nr   rF   r   zDThe behavior of array concatenation with empty entries is deprecatedr.   )r   r8   r^   r_   r  rE   )r"   rE   ro   r   r   r   rd   s          r#   test_append_empty_preserve_namez)TestIndex.test_append_empty_preserve_name{  s    Re$$$iiid+++T'SAAA 	( 	([[''F	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	({h&&&&&&s   A$$A(+A(zindex, expected))r;   F)r   Fr   Fr   F)r   T)r   T)r   T)r   Tr   F)r   T)r   Tc                 ,    t          |          |u sJ d S r7   )r   )r"   r(   ro   s      r#   test_is_numericzTestIndex.test_is_numeric  s#    $ )//8;;;;;;r%   ))r;   T)r   Trz  r{  )r   F)r   F)r   F)r   Fr|  )r   F)r   Fc                 N    |r|j         dk    r|rd}t          |          |u sJ d S )Nr;   F)rK   r
   )r"   r(   ro   rR   s       r#   test_is_objectzTestIndex.test_is_object  sA    $  	%+"9"9h"9Hu%%111111r%   c                 .    |                                  d S r7   )_summaryr3   s     r#   test_summaryzTestIndex.test_summary  s    r%   c                    t          j                    }d}t          |                              d          sut	          |g          }t          j        t          |          5  |                                }d d d            n# 1 swxY w Y   t          |d                   g}||k    sJ t          j        t          |          5  t	          g                                            d d d            d S # 1 swxY w Y   d S )NIndex\.format is deprecated000r.   r   )	r   nowrI   endswithr   r8   r^   r_   format)r"   r  r   r(   	formattedro   s         r#   test_format_bugzTestIndex.test_format_bug  si   
 lnn,3xx  '' 	)3%LLE+MEEE + +!LLNN	+ + + + + + + + + + + + + + +E!HH(((('SAAA 	 	"II	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s$   #BBB"C77C;>C;r   )r   y       @      @      @c                    t          |          }|                    |           t          |t                    }d}t	          j        t          |          5  |                                }d d d            n# 1 swxY w Y   t          |t                    rdnt          |          }t          |d                   t          |d                   t          |d                   |g}||k    sJ |d         |u sJ d S )	NrJ   r  r.   NaNr   r   rs   rV   )r    r  r   ra   r8   r^   r_   r  rM   r}   rI   )r"   r   nulls_fixturer(   r   r  	null_reprro   s           r#   test_format_missingzTestIndex.test_format_missing  s*    DzzM"""d&))) -'SAAA 	' 	'I	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	' 	''u==UEE3}CUCU	aMM3uQx==#eAh--KH$$$$Qx=((((((s   A99A= A=opanyallc                    |} t          ||                      }| t          |j        |                      k    sJ  t          |                                |                      }t          |          t          |          k    sJ d S r7   )r   rO   	to_seriesr   )r"   r  r$   r(   r   r   s         r#   test_logical_compatzTestIndex.test_logical_compat  s    !wub!!##0wu|R00222222.))2..00 DzzT%[[((((((r%   )r;   r   r   r   r   c                    t          |          }|t          t          dd                             }|                    |          }|t          t          d                    t          t          d|                    z            }t	          j        ||           |                    |d                   }|dd          }t	          j        ||           d S )Nrt   r   r   r   )r   r    r   dropr8   r?   )r"   r(   nr  droppedro   s         r#   test_drop_by_str_labelz TestIndex.test_drop_by_str_label  s     JJT%2,,''(**T""eAhh$uR||*<*<<=
gx000**U1X&&9
gx00000r%   keysr7  1c                     t          j        t          d          5  |                    |           d d d            d S # 1 swxY w Y   d S )N r.   )r0   r1   KeyErrorr  )r"   r(   r  s      r#   *test_drop_by_str_label_raises_missing_keysz4TestIndex.test_drop_by_str_label_raises_missing_keys  s    
 ]82... 	 	JJt	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   ?AAc                    t          |          }|t          t          dd                             }|                                dgz   }|                    |d          }|t          t          d                    t          t          d|                    z            }t          j        ||           |                    ddgd          }|t          t          |                             }t          j        ||           d S )Nrt   r   r   ro  errorsr7  )r   r    r   tolistr  r8   r?   )r"   r(   r  r  mixedr  ro   s          r#   $test_drop_by_str_label_errors_ignorez.TestIndex.test_drop_by_str_label_errors_ignore  s     JJT%2,,''('**U8*44eAhh$uR||*<*<<=
gx000**eU^H*==eAhh(
gx00000r%   c                     t          g d          }|                    d          }t          ddg          }t          j        ||           d S )Nr   r   rs   rV   r   r  r8   r?   )r"   r(   r  ro   s       r#   test_drop_by_numeric_label_locz(TestIndex.test_drop_by_numeric_label_loc  sJ    iii  **Q--!Q==
gx00000r%   c                     t          g d          }t          j        t          d          5  |                    ddg           d d d            d S # 1 swxY w Y   d S )Nr   r  r.   rV   r   )r   r0   r1   r  r  r3   s     r#   .test_drop_by_numeric_label_raises_missing_keysz8TestIndex.test_drop_by_numeric_label_raises_missing_keys  s    iii  ]82... 	 	JJ1v	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   AAAzkey,expectedr   r   )rV   r   rt   c                     t          g d          }|                    |d          }t          j        ||           d S )Nr   ro  r  r  )r"   r)   ro   r(   r  s        r#   (test_drop_by_numeric_label_errors_ignorez2TestIndex.test_drop_by_numeric_label_errors_ignore  sC     iii  **S*22
gx00000r%   )r   r   r   r   )r   r  r   )r  r   r   to_dropr  c                    t          |          }t          dgt                    }|                    |          }t          j        ||           |                    |d                   }|d         |d         gfD ],}|                    |          }t          j        ||           -|                    |d                   }dt          j        |d                                                    d}|d         |d         gfD ]J}t          j	        t          |          5  |                    |           d d d            n# 1 swxY w Y   Kd S )Nr   rJ   r   r   z\"\[z\] not found in axis\"r.   )r   ra   r  r8   r?   r   r   __repr__r0   r1   r  )	r"   rO   r  r(   ro   rd   removeddrop_mer   s	            r#   test_drop_tuplezTestIndex.test_drop_tuple  s    f#f---G$$
fh///**WQZ((qzGAJ</ 	4 	4G\\'**F!&(3333**WQZ((Nbi
 3 3 5 566NNNqzGAJ</ 	& 	&Gxs333 & &W%%%& & & & & & & & & & & & & & &	& 	&s   #EE		E		c                    t          |          dk    st          |t                    rt          j        d           t          |t
                    rt          st          j        d           |                                                    d          }|dd          }|	                    |d                   }t          j        ||           d S )Nr   z,Test doesn't make sense for empty MultiIndexz=Cannot test IntervalIndex with int64 dtype on 32 bit platformrs   )r   rM   r   r0   rc  r   r   uniquerepeatr  r8   r?   rD  s       r#   "test_drop_with_duplicates_in_indexz,TestIndex.test_drop_with_duplicates_in_index4  s     u::??j
;;?KFGGGe]++ 	YD 	YKWXXX%%a((9E!H%%
fh/////r%   is_monotonic_increasingis_monotonic_decreasing!_is_strictly_monotonic_increasing!_is_strictly_monotonic_decreasingc                 p    t          dt          j                    dg          }t          ||          rJ d S )Nrt      )r   r   r  r   )r"   r   r(   s      r#   test_is_monotonic_incomparablez(TestIndex.test_is_monotonic_incomparable@  s:     q(,..!,--5$'''''''r%   )r   r7  quux>   r7  r   r  index,expected)quxr8  r   r7  FFTTrJ   c                 Z    |                     |          }t          j        ||           d S r7   )isinr8   rQ   )r"   rO   r(   ro   rd   s        r#   	test_isinzTestIndex.test_isinM  s.     F##
#FH55555r%   c                    t          d|g          }t          |t                    r|t          |t                    rgt          j        |          rSt          j        |          r?t          j        |                    |g          t          j	        ddg                     d S ||u r?t          j        |                    |g          t          j	        ddg                     d S |rJ|j
        dk    r?t          j        |                    |g          t          j	        ddg                     d S t          j        |                    |g          t          j	        ddg                     d S )Nr   FTr;   )r   rM   r}   mathisnanr8   rQ   r  r=   r>   rK   )r"   r  nulls_fixture2rR   idxs        r#   test_isin_nan_common_objectz%TestIndex.test_isin_nan_common_objectY  s   
 S-()) }e,,	>511	 
=))	 
>**		 '.)**%''    
 n,,'.)**%''    
   
	CI$9$9'.)**%''     '.)**%((    r%   c                    |}|t           j        u s|t           j        u rdt          t	          |          j                   }t          j        t          |          5  t          d|g|           d d d            n# 1 swxY w Y   t          dt          j        g|          }|                    |g                                          rJ d S t          d|g|          }|                    t          j        g          }t          j        |t          j        ddg                     |                    t           j        g          }t          j        |t          j        ddg                     d S )Nz=float\(\) argument must be a string or a (real )?number, not r.         ?rJ   FT)rP   NaTNAreprr  __name__r0   r1   r   r   r=   r~   r  r  r8   rQ   r>   )r"   r  float_numpy_dtyperK   r   r  ress          r#   test_isin_nan_common_float64z&TestIndex.test_isin_nan_common_float64~  s   !BF""mru&<&<<D//899< <  y444 9 9sM*%88889 9 9 9 9 9 9 9 9 9 9 9 9 9 9 bfU333Cxx004466666FS-(666hhx  
#C5$-)@)@AAA hhx  
#C5%.)A)ABBBBBs   A>>BBlevelr   rb  )r  rh  r   r  c                 (   |                                 dd          dgz   }t          j        g d          }t          j        ||                    ||                     d|_        t          j        ||                    |d                     d S )Nnonexistingr  r  r   )r  r=   r>   r8   rQ   r  rE   )r"   r  r(   rO   ro   s        r#   test_isin_level_kwargzTestIndex.test_isin_level_kwarg  s     $6866677
#Hejjuj.M.MNNN

#Hejjxj.P.PQQQQQr%   c                     d|j         |j         dz    fD ]L}t          j        t          d          5  |                    g |           d d d            n# 1 swxY w Y   Md S )Nr   r   zToo many levelsr.   r  )nlevelsr0   r1   r  r  )r"   r(   r  s      r#   &test_isin_level_kwarg_bad_level_raisesz0TestIndex.test_isin_level_kwarg_bad_level_raises  s    %-5=1+<)=> 	, 	,Ez1BCCC , ,

2U
+++, , , , , , , , , , , , , , ,	, 	,s   AA	A	labelr  r   xyzzyc                 X   t          |t                    r.|                    ddg|j        dd          z             }d| d}n|                    d          }d| d}t	          j        t          |          5  |                    g |	           d d d            d S # 1 swxY w Y   d S )
Nr   r7  rs   z'Level z not found'zRequested level \(z$\) does not match index name \(foo\)r.   r  )rM   r   r   namesr0   r1   r  r  )r"   r  r(   r   s       r#   &test_isin_level_kwarg_bad_label_raisesz0TestIndex.test_isin_level_kwarg_bad_label_raises  s    eZ(( 	TLL%%+abb/!ABBE.E...CCLL''ESSSSC]83/// 	( 	(JJrJ'''	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	( 	(s   :BB#&B#c                     t          ddg          }t          j        ddg          }|                    |          }t	          j        ||           d S )Nr   r   F)r   r=   r>   r  r8   rQ   )r"   r   r(   ro   rd   s        r#   test_isin_emptyzTestIndex.test_isin_empty  sR     sCj!!8UEN++E""
#Hf55555r%   c                     t          ddg|          }|                    d g          }t          j        ddg          }t	          j        ||           d S )Nr   r   rJ   F)r   r  r=   r>   r8   rQ   )r"   string_dtype_no_objectr(   rd   ro   s        r#   test_isin_string_nullzTestIndex.test_isin_string_null  sX    sCj(>???TF##8UEN++
#FH55555r%   r   rs   rV   r   TTTT)r   r7  r8  r  z
2018-01-01c                     t          |          }||k    }t          j        g dt                    }t	          j        ||           d S )Nr  rJ   )r   r=   r>   r   r8   rQ   )r"   rO   r(   rd   ro   s        r#   test_boolean_cmpzTestIndex.test_boolean_cmp  sL     f&8444DAAA
#FH55555r%   z
name,levelr:  r   c                     |                                 }|r||_        |                    |          }t          j        ||           d S r7   )rH   rE   get_level_valuesr8   r?   )r"   r(   rE   r  ro   rd   s         r#   test_get_level_valueszTestIndex.test_get_level_values  sL     ::<< 	! HM**511
fh/////r%   c                 `    t          ddgd          }|j        |dd          j        k    sJ d S )Nr   r   asdfrF   r   r   rE   r3   s     r#   test_slice_keep_namezTestIndex.test_slice_keep_name  s;    sCjv...zU122Y^++++++r%   )r;   r   r   r   r   r   r   r   c                     |                     ||          }|}|dk    r|                                }t          j        ||           d S )Nhowouter)joinsort_valuesr8   r?   )r"   r(   	join_typerd   ro   s        r#   test_join_selfzTestIndex.test_join_self  sS     Ey11++--H
fh/////r%   method)striprstriplstripc                     t          g d          }t          fd|j        D                       } t          |j                              }t	          j        ||           d S )N)z jackzjill z jesse frankc                 L    g | ] } t          t                    |          !S r   )r   rI   )r   r(  r  s     r#   r,  z0TestIndex.test_str_attribute.<locals>.<listcomp>   s.    HHHa.'#v..q11HHHr%   )r   rO   r   rI   r8   r?   )r"   r  r(   ro   rd   s    `   r#   test_str_attributezTestIndex.test_str_attribute  so     <<<==HHHH5<HHHII+F++--
fh/////r%   rt   )r   r  )r7  320002010Y)startendrW   c                     t          j        t          d          5  |j                            d           d d d            d S # 1 swxY w Y   d S )Nzonly use .str accessorr.   rs   )r0   r1   AttributeErrorrI   r  r3   s     r#   test_str_attribute_raisesz#TestIndex.test_str_attribute_raises  s     ]>1IJJJ 	  	 IQ	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	 s   AAAzexpand,expectedNr   rS  fc                     t          g d          }||j                            |          }n|j                                        }t          j        ||           d S )N)za b czd er  )expand)r   rI   splitr8   r?   )r"   r  ro   r(   rd   s        r#   test_str_splitzTestIndex.test_str_split  s_     +++,,Y__F_33FFY__&&F
fh/////r%   c                     t          g d          }|j                            d          }t          j        g d          }t          j        ||           t          |t          j                  sJ d S )Na1a2b1b2r   )TTFF)	r   rI   
startswithr=   r>   r8   rQ   rM   ndarrayr3  s       r#   test_str_bool_returnzTestIndex.test_str_bool_return(  sr    ...//%%c**866677
#FH555&"*-------r%   c                    t          g d          }t          t          d          |          }||j        j                            d                   }t          t          d          ddg          }t          j        ||           d S )Nr  r   ri  r   rs   r  r  )r   r   r   r(   rI   r  r8   rx   )r"   r(   rp   rd   ro   s        r#   test_str_bool_series_indexingz'TestIndex.test_str_bool_series_indexing1  s    ...//5885)))17;))#../%((4,777
vx00000r%   abcdc                 8    dt          |          v }||k    sJ d S )NrI   )dirrD  s       r#   test_tab_completionzTestIndex.test_tab_completion9  s+    
 #e**$!!!!!!r%   c                    t          g d          }|dd                             t          ddgt          j                            sJ |ddg                             t          ddgt          j                            sJ d S )N)r   rs   rV   r   r   r   r   rV   rs   rJ   r   )r   r   r=   rc   r3   s     r#   !test_indexing_doesnt_change_classz+TestIndex.test_indexing_doesnt_change_classA  s    ...//QqSz##E1a&
$C$C$CDDDDDaV}&&uaV2:'F'F'FGGGGGGGr%   c                 L   t          t          j                            d                              d                    }t          dd          }t          j        t                    5  |	                    |d          }d d d            n# 1 swxY w Y   t          j        t                    5  |
                    t                                        |
                    t                              }d d d            n# 1 swxY w Y   t          j        ||           d S )Nrs      r@  r   r   r  r  )r   r=   rv   rw   permutationr   r8   r^   RuntimeWarningr  r`   ra   r  r?   )r"   
left_indexright_indexrd   ro   s        r#   test_outer_join_sortzTestIndex.test_outer_join_sortG  s}   290033??CCDD
 r:::'77 	? 	?__[g_>>F	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? 	? '77 	S 	S!((0066{7I7I&7Q7QRRH	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	S 	fh/////s%   *BBB2ADDDc                 ^   t          t          d          d          }|                    t          j        g d                    }t          t          d          d          }t          j        ||           |                    t          j        g d          d          }t          dd	t          j        gd          }t          j        ||           |                    t          j        g d          d
d          }t          g dd          }t          j        ||           d S )NABCxxxrF   )r   r   rb  BACT
fill_valuer   r   F)
allow_fillr2  )r   r   r   )r   r    taker=   r>   r8   r?   r~   r3  s       r#   test_take_fill_valuezTestIndex.test_take_fill_valueS  s   d5kk...BHZZZ0011e5111
fh/// BHZZZ00TBB#sBF+%888
fh/// BHZZZ00UtTTu555
fh/////r%   c                    t          t          d          d          }d}t          j        t          |          5  |                    t          j        g d          d           d d d            n# 1 swxY w Y   t          j        t          |          5  |                    t          j        g d	          d           d d d            d S # 1 swxY w Y   d S )
Nr.  r/  rF   zJWhen allow_fill=True and fill_value is not None, all indices must be >= -1r.   )r   r   r  Tr1  )r   r   )r   r    r0   r1   r2   r4  r=   r>   r   s      r#    test_take_fill_value_none_raisesz*TestIndex.test_take_fill_value_none_raisesd  sQ   d5kk...( 	
 ]:S111 	> 	>JJrx


++J===	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	>]:S111 	> 	>JJrx


++J===	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	> 	>s#   ,A44A8;A8,CCCc                     t          t          d          d          }t          j        t          d          5  |                    t          j        ddg                     d d d            d S # 1 swxY w Y   d S )Nr.  r/  rF   zout of boundsr.   r   r7  )r   r    r0   r1   r  r4  r=   r>   r3   s     r#   test_take_bad_bounds_raisesz%TestIndex.test_take_bad_bounds_raisesp  s    d5kk...]:_=== 	* 	*JJrxB(()))	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	* 	*s   *A11A58A5rE   labelsr   r   r   )r   r   r   20130101c                     t          g d          }||_        |                    |          d         j        |k    sJ d S )N)r   r   rs   r   )r   rE   reindex)r"   rE   r;  r(   s       r#   8test_reindex_preserves_name_if_target_is_list_or_ndarrayzBTestIndex.test_reindex_preserves_name_if_target_is_list_or_ndarrayu  sG    " iii  
}}V$$Q',444444r%   c                     t          t          d                    }|                    |          d         j        j        |j        j        k    sJ d S NrD   r   r   r    r?  rK   r  )r"   r;  r(   s      r#   <test_reindex_preserves_type_if_target_is_empty_list_or_arrayzFTestIndex.test_reindex_preserves_type_if_target_is_empty_list_or_array  sJ     d5kk""}}V$$Q'-2ek6FFFFFFFr%   zlabels,dtypec                     t          t          d                    }|                    |          d         j        j        |k    sJ d S rB  rC  )r"   r;  rK   r(   s       r#   :test_reindex_doesnt_preserve_type_if_target_is_empty_indexzDTestIndex.test_reindex_doesnt_preserve_type_if_target_is_empty_index  sE     d5kk""}}V$$Q'-2e;;;;;;r%   c                     |}t          t          d                    }t          g |          }|                    |          d         j        |k    sJ d S )NrD   rJ   r   )r   r    r?  rK   )r"   any_real_numpy_dtyperK   r(   r;  s        r#   Btest_reindex_doesnt_preserve_type_if_target_is_empty_index_numericzLTestIndex.test_reindex_doesnt_preserve_type_if_target_is_empty_index_numeric  sY     %d5kk""r'''}}V$$Q'-666666r%   c           	         t          t          d                    }|                    t          t          g t          j                  t          g t          j                  gg g g                    d         }|j        d         j        j	        t          j        k    sJ |j        d         j        j	        t          j        k    sJ d S )NrD   r   r   )
r   r    r?  r   r=   r   r   r   rK   r  )r"   r(   rd   s      r#   -test_reindex_no_type_preserve_target_empty_miz7TestIndex.test_reindex_no_type_preserve_target_empty_mi  s    d5kk""b"(++U2rz-B-BCb"XNN
 

 }Q%*bh6666}Q%*bj888888r%   c                     t          g dd          }t          g dd          }t          g dd          }|                    |d          \  }}t          j        ||           d S )Nr   r(  rF   r  r  )r   r?  r8   r?   )r"   r  idx2ro   rd   r   s         r#   test_reindex_ignoring_levelz%TestIndex.test_reindex_ignoring_level  sv    IIIC(((\\\,,,C000KKCK00	
fh/////r%   c                     t          t          d                    }|                    t          j        g d                    }t          ddg          t          g d          d}t          j        ||           d S )Nrt   )r   r   rs   rs   rs   r   r   )rs   rV   r   r   rs   )r   r   groupbyr=   r>   r8   assert_dict_equalr3  s       r#   test_groupbyzTestIndex.test_groupby  sn    eAhhrx8899aV}}yyy)9)9::
VX.....r%   zmi,expectedrP  r   rt   )r      c           	          t          ddgdgt          j        ddgddggdd	g
                    }|j        |k    }t	          j        ||           d S )NrV   rU  r   r   r   rs   rt   r   r   r  columnsr(   )r   r   from_arraysr(   r8   rQ   )r"   miro   rz   rd   s        r#   test_equals_op_multiindexz#TestIndex.test_equals_op_multiindex  sn     FE(1a&1a&)9#sLLL
 
 
 R
#FH55555r%   c           	          t          ddgdgt          j        ddgddggdd	g
                    }|j        |j        k    }t	          j        ddg          }t          j        ||           d S )NrV   rU  r   r   r   rs   rt   r   r   rW  rX  T)r   r   rZ  r(   r=   r>   r8   rQ   )r"   rz   rd   ro   s       r#   "test_equals_op_multiindex_identifyz,TestIndex.test_equals_op_multiindex_identify  s    FE(1a&1a&)9#sLLL
 
 
 RX%8T4L))
#FH55555r%   rP  rT  )   	   r6  c           	          t          ddgdgt          j        ddgddggdd	g
                    }t          j        t
          d          5  |j        |k     d d d            d S # 1 swxY w Y   d S )NrV   rU  r   r   r   rs   rt   r   r   rW  rX  zLengths must matchr.   )r   r   rZ  r0   r1   r2   r(   )r"   r(   rz   s      r#   +test_equals_op_mismatched_multiindex_raisesz5TestIndex.test_equals_op_mismatched_multiindex_raises  s     FE(1a&1a&)9#sLLL
 
 
 ]:-ABBB 	 	H	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A&&A*-A*c                     t          j        g d          }t          g d          }||k    }t          j        g d          }t          j        ||           d S )Nr_  r6  )FFF)r   r2  r   r=   r>   r8   rQ   )r"   rR   r[  r(   rd   ro   s         r#   &test_equals_op_index_vs_mi_same_lengthz0TestIndex.test_equals_op_index_vs_mi_same_length  se    #$<$<$<==+++,,u811122
#FH55555r%   zdt_conv, arg
2000-01-01
2000-01-02z01:02:03z01:02:04c                 ^    t          |d          }|j         ||          j        k    sJ d S )Nr  rF   r  )r"   dt_convr   r(   s       r#   !test_dt_conversion_preserves_namez+TestIndex.test_dt_conversion_preserves_name  s:     c(((zWWU^^0000000r%   c                     t          g d          }t          j        t          d          5  d|_        d d d            d S # 1 swxY w Y   d S )Nr   zCan't set attributer.   F)r   r0   r1   r  rd  r3   s     r#   #test_cached_properties_not_settablez-TestIndex.test_cached_properties_not_settable  s    iii  ]>1FGGG 	$ 	$#EO	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$s   AA	Ac                 `   t          j        dd           ddlm} d}|                    |           t          j        d d          5   |d	          5  t          |j        	                    d
d                     d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )NIPythonz6.0.0)
minversionr   )provisionalcompleterz+import pandas as pd; idx = pd.Index([1, 2])F)raise_on_extra_warningsro  zidx.r   )
r0   importorskipIPython.core.completerrp  run_cellr8   r^   r    	Completercompletions)r"   iprp  codes       r#   test_tab_complete_warningz#TestIndex.test_tab_complete_warning  sC   I'::::??????<
D 'eLLL 	: 	:%%h// : :R\--fa88999: : : : : : : : : : : : : : :	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	:s6   
B#)B?B#B	B#B	B##B'*B'c                     t          |t                    r|                    d           d S dt          |          j         d}t          j        t          |          5  |                    d           d d d            d S # 1 swxY w Y   d S )Nr   'z$' object has no attribute 'contains'r.   )rM   r   containsr  r  r0   r1   r  r   s      r#   test_contains_method_removedz&TestIndex.test_contains_method_removed  s    e]++ 	"NN1Pd5kk*PPPC~S999 " "q!!!" " " " " " " " " " " " " " " " " "s    BB
Bc                 r   t          g d          }t          j        t          d          5  |                    d           d d d            n# 1 swxY w Y   t          j        t          d          5  |                    ddg           d d d            n# 1 swxY w Y   t          j        t          d          5  |                    dg           d d d            n# 1 swxY w Y   t          g d	          }|                    dg          }t          j        |d
         |           t          g d	          }|                    d          }t          j        |d
         |           t          g d          }|                    d          }t          j        |d
         |           d S )N)rt   r   rV   rs   r   z(ascending must be a single bool value orr.   True)	ascendingz3ascending must be a list of bool values of length 1Tzascending must be a bool valuer   r   F)r   r0   r1   	Exception	sortlevelr8   r?   rD  s       r#   test_sortlevelzTestIndex.test_sortlevel  s^   ooo&&]9,VWWW 	. 	.OOfO---	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. ]R
 
 
 	4 	4 OOtTlO333	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4 	4
 ]9,LMMM 	0 	0OOvhO///	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 ))D622
fQi222))400
fQi222))511
fQi22222s5   AAA6BB"BC%%C),C)c                     t          dt          j        g          }|                    d          d         }t          t          j        dg          }t	          j        ||           d S )Nr   first)na_positionr   )r   r=   r~   r  r8   r?   r"   r  rd   ro   s       r#   test_sortlevel_na_positionz$TestIndex.test_sortlevel_na_position3  sY    QK  733A6"&!%%
fh/////r%   zperiods, expected_results   r  c                     t          g d          }|                    |          }t          |          }t          j        ||           d S )N)r   r  r  (   r\   )r   diffr8   r?   )r"   rX   expected_resultsr  rd   ro   s         r#   test_index_diffzTestIndex.test_index_diff:  sP     ((())'"")**
fh/////r%   zdecimals, expected_resultsr  rh  r   )g333333?gffffff@g      @)gGz?g@gGz@c                     t          g d          }|                    |          }t          |          }t          j        ||           d S )N)gX9v?g(\@gS@)r   roundr8   r?   )r"   decimalsr  r  rd   ro   s         r#   test_index_roundzTestIndex.test_index_roundJ  sP     )))**8$$)**
fh/////r%   )r  
__module____qualname__r0   fixturer   r$   r*   r  parametrizer4   r:   rB   rS   r   r   r   re   rh   rq   r{   r   r=   r   r~   r   rP   r  r   r   r   r   r   iterr   r   r   r   r   r   r   paramr  r   r   r   r   r   r   r  r
  r  r   r  r  r  r$  r4  r?  rE  rN  r]  filterwarningsrg  r   rl  rq  rw  ry  r~  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r>   r   r  r  r  r  r  r  ra   r  r  r  r  r  r  r  r   r2  r  r  r  r  r    r#  r%  r,  r5  r8  r:  rO   r  r@  r   rD  
datetime64rF  rI  rK  rN  rS  r\  r^  rc  re  rm   to_timedeltarj  rl  ry  r}  r  r  r  r  r   r%   r#   r   r   -   s       ^$e $ $ $ ^$G G G
 [WzlTBB  CB- - - [Wxj4@@0 0 A@03 3 3 []T5M::[J"'   J)Q???OH3:::LC;;;	
 3 3  ;: 3( [ 
-C|TTT _XC;;;UC\,S!<<<eD	

 
) )
 
)	0 	0 	0     00 0 0 [BJ',bf5	
 
0 
0 
0 [__e$263$g.3RV$e,	
 - - -
 [Vh%788[Wum&<==71 71 >= 9871r [Vh%788[Wun&=>>- - ?> 98- [Wr4488_____&EFF[		
    GF
 [[#&&&4[b,,,k:[Rs333[AZQ,ZA8RIII:V	
	 	 	 	 [	
 	
 	
 !   $ % $ [FLfk.?.?z.?.R.RSSS	
   
 
! !
 
! [###   
	' 	' 
	'E E E [Sz""EE///$:$:OOOL 7 7 7$ $ $$" " ".   [Wxj4@@/ / A@/* * * [NNN   
 [WsBHo66; ; 76 ; [NNN   

 
 

6 6 60 0 0 A A A [J|#r:::LC<<<OGR000	
 0 0 0
< < < [GG77	
 0 0 0 [GG77	
  [ VWW0 0 XW 0. [	###:::	6	6	6Ecu8U8UV 0 0	 00 0 00 0 0 [_~}.MNN' ' ON' [	
 	
 	
    "< <# "< [	
 	
 	
    "2 2# "2
    $ [V&:&:&:OOO%LMM) ) NM)  [TE5>22) ) 32) [CCCd   
1 
1 
1 [CCCd    [VuensEl%CDD  ED  [CCCd   1 1 11 1 1  
 [!UU999--.EE1a&MM0JK 1 1 1 [			!7!7!79O9O9OP  [Y*c):S*<M(NOO& & PO	 
&& [ VWW	0 	0 XW	0 [	
 	
 	
 ( ( ( [X(>(>(>@V@V@V'WXX[U///00("(;U;U;U2V2VWU2YY40001	
 6 6  YX6# # #JC C C2 [Wq"g..[E...//E&&&bj999	
 R R  /.R, , ,
 [WsHgrv&FGG( ( HG( [Wr66+?+?+?"&NOO6 6 PO66 6 6 [LL   $$$(((J|#q999	
	 	6 6	 	6 [Wxj4@@[\Iz+BCC0 0 DC A@0, , , [		
 		
 		
    0 0 0 [X'D'D'DEE0 0 FE0 [E%%((OOJ|R000"J"L,#?@@Lv6<<<		
       [55///C:u=>>?EE???S#J>??@&
&$sC&83:OP 		
 0 0 0. . .1 1 1 [EE$$v,,//6uuQxx%8PQ " " "
H H H
0 
0 
00 0 0"
> 
> 
>* * *
 [VdH%566[BHRLLOOOOBH___%%BH___%%Jz1---4Jz1---4466
	
 5 5  765 [XHBHRLL("(2RX:V:V:V'WXXG G YXG
 []2.	
 < < <
7 7 79 9 90 0 0/ / / [#Z#VV$455xrxt7M7MN#Z#VV$455xrxu7N7NO	
 
6 
6 
6	6 	6 	6 ["J"#;#;#;<<E'''((	
   6 6 6 [^lL9:_z:67	
 1 1 1
$ $ $
: : :" " "3 3 320 0 0 [#RR()R,-R01	
 0 0 0 [$  """#	
 0 0 0 0 0r%   r   c                      e Zd Zej        defd            Zd Zd Zd Z	d Z
d Zd Zej                            d	d
dg          ej                            ddedg          ej                            dg dg dfg dg dfddej        dgg dfg dg dfdej        ddgg dfg          d                                     Zej                            d	d
dg          ej                            d eg d           eg d          f edddej        g           eg d          f eg d           eg d          f eej        d d!d"ej        g           eg d          f eg d#d$%           eg d#d$%          f eg d&d$%           eg d#d$%          fg          d'                         Zd( Zej                            d) eej        g           eej        d*g           ed*d+ej        g           ed,d-ej        g           ej        d.g           ej        d.d/g           ej        g d0           ej        d1d.g          g          d2             Zej                            dg d3          ej                            d4d5d6g          d7                         Zd8 Zd9 Zej                             d:          d;             Z!dS )<TestMixedIntIndexr   c                 $    t          g d          S )N)r   r   r   r   rs   r   r   r!   s    r#   r$   zTestMixedIntIndex.simple_index_  s    ---...r%   c                     |}t          j        t          d          5  |                                 d d d            d S # 1 swxY w Y   d S Nz'>|<' not supportedr.   )r0   r1   r   argsortr"   r$   r(   s      r#   test_argsortzTestMixedIntIndex.test_argsortc  s    ]9,ABBB 	 	MMOOO	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	   A  AAc                     |}t          j        t          d          5  t          j        |           d d d            d S # 1 swxY w Y   d S r  )r0   r1   r   r=   r  r  s      r#   test_numpy_argsortz$TestMixedIntIndex.test_numpy_argsorth  s    ]9,ABBB 	 	Ju	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	r  c                 `   |} t          |          |dd          } t          |          |d          }||usJ t          j        ||           |j        dk    sJ |j        dk    sJ t	          d|          }t	          d|d d	                   }||z  }|j        j        dk    sJ d S )
NTmariorG   Fr   rs   ri  rV   rb  )r  r8   r?   rE   r   r(   )r"   r$   r(   r  seconds1s2s3s           r#   test_copy_namez TestMixedIntIndex.test_copy_namem  s     UE7;;;eU/// F""""
eV,,,zW$$$${g%%%%AU###AVCRC[)))"Wx}''''''r%   c                    t          ddgd          }|                                }t          j        ||           |                    d          }t          j        ||d           |j        dk    sJ |j        dk    sJ d S )Nr   rs   MyNamerF   NewNameF)check_names)r   rH   r8   r?   rE   )r"   r(   index1index2s       r#   test_copy_name2z!TestMixedIntIndex.test_copy_name2  s     q!f8,,,
eV,,,++
eV????zX%%%%{i''''''r%   c                     t          dt          j        ddgd          }t          dt          j        dgd          }|                                }t	          j        ||           d S )Nrs   r   my_indexrF   )r   r=   r~   r  r8   r?   )r"   r  ro   rd   s       r#   test_unique_naz TestMixedIntIndex.test_unique_na  s_    Q1%J777!RVQj999
fh/////r%   c                     |}|                                 |j                                         k    sJ |                                |j                                        k    sJ d S r7   )r  rO   r  r  s      r#   r  z%TestMixedIntIndex.test_logical_compat  s[    yy{{el..000000yy{{el..00000000r%   r  r  r  rK   Ncategoryzvals,expectedr   r  r  rh  r   r<  r   r   r   c                     t          ||          }|                    |          }t          ||          }t          j        ||           d S )NrJ   r  )r   dropnar8   r?   )r"   r  rK   r   ro   r(   rd   s          r#   test_dropnazTestMixedIntIndex.test_dropna  sT     d%(((#&&///
fh/////r%   r  )r   
2011-01-02
2011-01-03r   r  r  )rZ   2 days3 daysrZ   r  r  )2012-022012-042012-05Mrl   )r  r  r  r  c                 \    |                     |          }t          j        ||           d S )Nr  )r  r8   r?   )r"   r  r(   ro   rd   s        r#   test_dropna_dt_likez%TestMixedIntIndex.test_dropna_dt_like  s0    > #&&
fh/////r%   c                     d}t          j        t          |          5  t          g d                              d           d d d            d S # 1 swxY w Y   d S )Nzinvalid how option: xxxr.   r   r/  r  )r0   r1   r2   r   r  )r"   r   s     r#   test_dropna_invalid_how_raisesz0TestMixedIntIndex.test_dropna_invalid_how_raises  s    ']:S111 	/ 	/)))###...	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/s   &AAAr(   r   rs   r   r   r  rf  )rf  r  rg  rA  c                 ^    |j         du sJ |j        du sJ |j        du sJ |j        du sJ d S NFr  r3   s     r#   test_is_monotonic_naz&TestMixedIntIndex.test_is_monotonic_na  sZ     ,5555,55556%????6%??????r%   )f8zm8[ns]zM8[us]unique_firstTFc                     t          g d|          }|r#|j        du sJ |j        du sJ |j        du sJ d S |j        du sJ |j        du sJ |j        du sJ d S )N)Nr   r   rJ   F)r   rd  r  r  )r"   rK   r  r(   s       r#   test_is_monotonic_unique_naz-TestMixedIntIndex.test_is_monotonic_unique_na  s     lll%000 	,?e++++0E99990E9999990E99990E9999?e++++++r%   c                     t          g dd          } |t          t          d                    |          }dt          |          v sJ d S )Nr   r   rF   rV   ri  0)r   r    r   r  )r"   frame_or_seriesr(   rd   s       r#   test_int_name_formatz&TestMixedIntIndex.test_int_name_format  sU    oooA... eAhhu===d6ll""""""r%   c                     t          d t          d          D                       }d}t          j        t          |          5  t          |           d d d            d S # 1 swxY w Y   d S )Nc                 ,    g | ]}t          |          S r   )rI   )r   r(  s     r#   r,  z>TestMixedIntIndex.test_str_to_bytes_raises.<locals>.<listcomp>  s    111!s1vv111r%   r   z2^'str' object cannot be interpreted as an integer$r.   )r   r   r0   r1   r   bytesr   s      r#   test_str_to_bytes_raisesz*TestMixedIntIndex.test_str_to_bytes_raises  s    11uRyy11122B]9C000 	 	%LLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A!!A%(A%z2ignore:elementwise comparison failed:FutureWarningc                     t          g d          }|dk    }t          j        g d          }t          j        ||           d S )N)r   )r   r   r   r   r  )FFT)r   r=   r>   r8   rQ   r  s       r#   test_index_with_tuple_boolz,TestMixedIntIndex.test_index_with_tuple_bool  sQ    
 88899
"800011
#FH55555r%   )"r  r  r  r0   r  r   r$   r  r  r  r  r  r  r  r  ra   r=   r~   r  r   rP   r  r   r   r  r  rm   r  r  r  r  r  r  r  r   r%   r#   r  r  [  s        ^/e / / / ^/  
  
( ( (,( ( (0 0 01 1 1
 [UUEN33[WtVZ&@AA[YY			"__ooo.3$ooo6__ooo.263$ooo6	
	 	0 0	 	 BA 430 [UUEN33[ HHHIIHHHII
 |\<PQQHHHII
 ===>>===>>
 (HbfMNN===>>
 ===CHHH===CHHH
 DDD3OOO===CHHH+	
 :0 0;  43<0/ / /
 [E26(OOE261+E1a.!!E3RV$%%BNE7##BNE<011BN>>>??BOWe,--		
 @ @ @ [W&@&@&@AA[^dE];;
, 
, <; BA
,# # #
   [ TUU6 6 VU6 6 6r%   r  c                   >   e Zd Zej                            dg dgd eg d          fg dgdg eg dd          fddgddggd edgddggd	d	gd	d
gg          fddgddggddg edgddggd	d	gd	d
ggddg          fg          d             Zd Z	d Z
d ZdS )TestIndexUtilszdata, names, expectedr   NrE   rF   r   r   r   r   r   L1L2rW  c                 P    t          ||          }t          j        ||           d S r7   )r   r8   r?   )r"   r   r  ro   rd   s        r#    test_ensure_index_from_sequencesz/TestIndexUtils.test_ensure_index_from_sequences  s,    $ -T599
fh/////r%   c                 .   t          j        ddd          t          j        ddd          t          j        ddd          t          j        dd	d
          g}t          |          }t          |t                    }t          j        ||           d S )Nr   r   r   )closedrs   r   rV   neitherr   bothrJ   )rP   Intervalr   r   ra   r8   r?   )r"   	intervalsrd   ro   s       r#   (test_ensure_index_mixed_closed_intervalsz7TestIndexUtils.test_ensure_index_mixed_closed_intervals#  s     K1V,,,K1W---K1Y///K1V,,,	
	 i((&111
fh/////r%   c                     dt          j        t           j                  j        g}t	          |          }t          |          |k    sJ t          |d          }t          j        ||           d S )Nr   r   rJ   )	r=   iinfor   maxr   r    r   r8   r?   )r"   rO   rd   ro   s       r#   test_ensure_index_uint64z'TestIndexUtils.test_ensure_index_uint64/  sl     RXbi((,-f%%F||v%%%%x000
fh/////r%   c                 l    t          g           }t          g           }t          j        ||           d S r7   )r   r   r8   r?   )r"   rd   ro   s      r#   test_get_combined_indexz&TestIndexUtils.test_get_combined_index;  s3    $R((99
fh/////r%   )r  r  r  r0   r  r  r   r   r  r  r  r  r   r%   r#   r  r    sG       [ii[$iii 0 01ii[6(EE)))&$A$A$ABsc3Z(
SEC:.!Q!Q0@AA sc3Z(t
SEC:.!Q!Q0@tUUU	
 "0 0# "0
0 
0 
0
0 
0 
00 0 0 0 0r%   r  opname)eqneleltgegtaddraddsubrsubmulrmultruedivrtruedivfloordiv	rfloordivpowrpowmoddivmodc                 L    d|  d} t          ||           }|j        | k    sJ d S )N__)r   r  )r  r(   r  s      r#   test_generated_op_namesr  A  s9    4 &___FUF##F?f$$$$$$r%   r   r   )r   r@  rA  r   )r   rK   r   c                     t          j        t          d          5   | d           d d d            d S # 1 swxY w Y   d S )Nzunexpected keyword argumentr.   r7  )r   )r0   r1   r   )r   s    r#   ,test_index_subclass_constructor_wrong_kwargsr	  `  s     
y(E	F	F	F  %                 r5   c                     d} t          j        t          |           5  t          t	          j        ddgt                    dd           d d d            n# 1 swxY w Y   t          j        t          |           5  t          t	          j        g d	d
          dd           d d d            n# 1 swxY w Y   t          j        t          |           5  t          ddddd           d d d            n# 1 swxY w Y   t          j        t          |           5  t          g ddd           d d d            d S # 1 swxY w Y   d S )Nz[Uu]nexpected keyword argumentr.   r   r   rJ   testT)rE   fastpathr   r   r   rt   rs   r   )	r0   r1   r   r   r=   r>   ra   r   r   )r   s    r#   test_deprecated_fastpathr  s  s|   
*C	y	,	,	, N NbhSz000vMMMMN N N N N N N N N N N N N N N 
y	,	,	, N Nbhyyy000vMMMMN N N N N N N N N N N N N N N 
y	,	,	, 8 81a$77778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 
y	,	,	, F FvEEEEF F F F F F F F F F F F F F F F F FsG   .AAA>)B33B7:B7C::C>C> EE	Ec                      t          g d          } t          j        t          d          5  | d d d f          d d d            d S # 1 swxY w Y   d S )N)r   r   rs   rV   r-   r.   )r   r0   r1   r2   )r  s    r#   test_shape_of_invalid_indexr    s     

C	z)E	F	F	F  AAAtG                 s   AAArK   c                    d}t          j        d                              ddd          }t          j        t
          |          5  t          ||            d d d            n# 1 swxY w Y   t          |                    dd                    }t          j        t
          |          5  t          ||            d d d            n# 1 swxY w Y   t          dt          d                    }t          j        t
          |          5  t          j
        ddggdz  |           |_        d d d            d S # 1 swxY w Y   d S )	Nz Index data must be 1-dimensionalr`  rs   r.   rJ   r   r   rV   )r=   r0  reshaper0   r1   r2   r   r   r   r   r>   r(   )rK   r   r@   rz   sers        r#   test_validate_1d_inputr    s    -C
)A,,

q!Q
'
'C	z	-	-	-    c                              
3;;q!$$	%	%B	z	-	-	-  b               E!HH

C	z	-	-	- 8 8Hq!fX\777	8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8s6   A%%A),A).CCC"D>>EEzklass, extra_kwargsc                     g | ]	fd i g
S )c                 &    t          |           S )NrJ   r  )r(  dtyps    r#   r)  z<listcomp>.<lambda>  s    U1D))) r%   r   )r   r  s    @r#   r,  r,    s(    	T	T	T4))))2
.	T	T	Tr%   rW   r
  c                      | t          t          j        dd                    fi |} | t          t	          dd                    fi |}t          j        ||d           d S )Ni  i  TrL  )
memoryviewr=   r0  r    r   r8   r?   )r   extra_kwargsrd   ro   s       r#   test_construct_from_memoryviewr    sv     U:bid3344EEEEFuT%d++,,====H&($777777r%   r  c                    t          t          j        g          }t          j        dg          } | ||          }t	          j        ||            | ||                                          }t	          j        ||           d S r  )r   r=   r~   r>   r8   rQ   rH   )r  r  ro   rd   s       r#   test_nan_comparison_same_objectr    sx     //Cx  HRS\\F111RSXXZZ  F11111r%   pyarrowc            	          dd l } t          dgddggt          j        |                     |                                                               }|j        rJ |j        rJ d S )Nr   r   rs   rV   rJ   )r  r   rP   
ArrowDtypelist_r   r  r  )par  s     r#   #test_is_monotonic_pyarrow_list_typer"    sn     
!q!fR]288BHHJJ3G3G%H%H
I
I
IC**********r%   )Dcollectionsr   r   	functoolsr   r  operatorr   numpyr=   r0   pandas.compatr   pandas.errorsr   pandas.util._test_decoratorsutil_test_decoratorstdpandas.core.dtypes.commonr   r	   r
   pandasrP   r   r   r   r   r   r   r   r   r   r   r   pandas._testing_testingr8   pandas.core.indexes.apir   r   r   r   r   r   r  r  r  r  r  r   r  ra   r	  r  r  r   r   r   r  ALL_REAL_NUMPY_DTYPESr  r  r  r  
skip_if_nor"  r   r%   r#   <module>r4     s   # # # # # #               				            + + + + + + ) ) ) ) ) ) ) ) )                                                         k0 k0 k0 k0 k0 k0 k0 k0\)o6 o6 o6 o6 o6 o6 o6 o6d10 10 10 10 10 10 10 10h    2% %3 2%  s+++\N333<.111gY///
q***[R[A%6%6$7888SE000
A3qc222	   F F F	 	 	 429bj"IJJ8 8 KJ8$ 		T	T2;S	T	T	T 
 
	
 
vsm$	 	8 8	 	8 X[9::	2 	2 ;:	2 y+ + + + +r%   