U
    _{f                     @   s  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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  d dl!m"Z# d d
l$m%Z%m&Z&m'Z'm(Z(m)Z) d dl*m+Z+ G dd de+Z,G dd de+Z-G dd dZ.e
j/0ddddddddddddddd d!d"d#d$d%d&gd'd( Z1e
j/0d)e#2 d*d+ Z3d,d- Z4d.d/ Z5e
j/0d0de	j6e	j7e	j8gd1d2 Z9e
j/0d3e%i gfd4d5 e#j:D ei gei ged6d7igfd8d9 Z;e
j/0d:ej<ej=gd;d< Z>dS )=    )defaultdict)datetime)StringION)IS64)InvalidIndexError)
async_mark)is_any_real_numeric_dtypeis_numeric_dtypeis_object_dtype)
CategoricalIndex	DataFrameDatetimeIndexIntervalIndexPeriodIndex
RangeIndexSeriesTimedeltaIndex
date_rangeperiod_range)Index
MultiIndex_get_combined_indexensure_indexensure_index_from_sequences)Basec                   @   s  e Zd ZeZejedddZdd Zej	j
ddgdd	d
d Zdd Zej	j
ddgdd	dd Zej	j
ddgdd	dd Zej	
dddgej	
deddddddeddddejddddeddddgdd Zej	
d eddddd!dfejdddddfedddddfgd"d# Zd$d% Zd&d' Zd(d) Zej	
d*eejejfed+ejfgd,d- Zej	
d.d/d0dd1d2gd3fd4ejd5d6gd7fd8d9d:ejgd;fgd<d= Zej	
d>d?d@gej	
dAeegdBdC Zej	
d>d?d@gej	
dAee gdDdE Z!ej	
dFg e"g dGdH dID gej	
dAee#ee gdJdK Z$ej	
dLe%g d9dMe%fe%e"g d9dMe%fe%dNdH dID d9dMe%fe&d/dOe&fe'd/d0gdPdQggg g gdRe'fgdSdT Z(ej	j
dddUdVdWdXdYdZd[d\d]d^d_gdd	d`da Z)ej	j
ddej*dbej	j+dcdddedfdgdhgdd	didj Z,ej	j
ddWdXdZgdd	dkdl Z-dmdn Z.ej	
doedpdqgedpdqdrgdpdqdsggdtdu Z/dvdw Z0dxdy Z1dzd{ Z2ej	j
ddgdd	d|d} Z3d~d Z4ej	j
dddWdXd^d_dUdVgdd	ej	
dej5ej6gdd Z7ej	j
dddWdXd^d_dUdVgdd	dd Z8dd Z9dd Z:dd Z;ej	
d>dddgdd Z<dd Z=ej	
ddd dd gdd Z>ej	
ddd dd gdd Z?ej	
de@dddgdd0dgdddddgdd ZAdd ZBdd ZCej	
dddgdd ZDej	j
ddddddddddddgdgd	dd ZEej	j
ddddddddddddgdgd	ddń ZFddǄ ZGddɄ ZHej	
dd/ddgdpdqdsggdd΄ ZIej	
dddgddӄ ZJej	j
dddWdXdUdVgdd	ddՄ ZKej	j
dddWdXdUdVgdd	ej	
dddgddggddڄ ZLej	j
dddWdXdUdVgdd	dd܄ ZMddބ ZNdd ZOej	
dd1ed/d0dgfdd1d2ged/d0gfgdd ZPej	
d?dpdqdgdpddqgddpdqggej	
dddpgdpdggdd ZQdd ZRej	
d>ddddgdd ZSej	
d?dddgdddhgej	
deddddgeTddddgfeg ejTg eUdfgdd ZVdd ZWdd ZXej	
dddgej	
deddddgeddd6dgejdgdd ZYdd ZZej	
d dddejgdd Z[ej	
dhg e@e\deTg gdd Z]ej	
d?d/d0dd1gddd6dgddddgddddgeddd1dgdd	 Z^ej	j
ddgdd	ej	
d
ddgdd Z_dd Z`ej	j
ddddWdXd^d_dUdVgdd	dd Zaej	
ddddgdd Zbej	
deecd2edede'fddgeddd8dgdd  Zgej	
d!d"edpdqdsgdrd#gd$ggfdedpdqdsgdrd#gd$ggfde'fd%drd#ejfd$ejejfgfgd&d' Zhd(d) Zid*d+ Zjej	
deekd,dfeecd1dfgd-d. Zld/d0 Zmd1d2 Znd3d4 Zod5d6 Zpd7d8 Zqej	
d9d"dgej	
d:g eTg d8d9d:gd:d9d8geTd8d9d:geTd:d9d8ged;dd<jred;dd<s gd=d> Ztej	
d:g eTg ejTg ejudgd?d@ Zvej	
dAeg ejwfgdBdC ZxdDdE ZydFdG ZzdHdI Z{dJdK Z|ej	
dLe'fdMdNgeTddgfe'fdMdOgeTddgfgdPdQ Z}dRdS Z~ej	
de'fdMdNdTgedddggdUdV ZdWdX Zej	
dYejdZd[gfejd\d]gfgd^d_ Zd`da Ze dbdc Zddde Zdfdg Zd"S (h  	TestIndexreturnc                 C   s   |  tdS )NZabcde)
_index_clslistself r"   ]/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/pandas/tests/indexes/test_base.pysimple_index0   s    zTestIndex.simple_indexc                 C   s"   |}|d }| |dkstd S )Nr   T)Z$_can_hold_identifiers_and_holds_nameAssertionError)r!   r$   indexkeyr"   r"   r#   test_can_hold_identifiers4   s    z#TestIndex.test_can_hold_identifiersr&   r   T)Zindirectc              	   C   s.   t jtdd |d d d f  W 5 Q R X d S )NMulti-dimensional indexingmatch)pytestraises
ValueErrorr!   r&   r"   r"   r#   test_new_axis9   s    zTestIndex.test_new_axisc                 C   s   t || d S N)tmassert_contains_allr/   r"   r"   r#   test_constructor_regularA   s    z"TestIndex.test_constructor_regularstringc                 C   s.   t |}t|}t|| t|| d S r1   )nparrayr   r2   r3   assert_index_equalr!   r&   arrZ	new_indexr"   r"   r#   test_constructor_castingD   s    
z"TestIndex.test_constructor_castingc                 C   s^   t |}t|ddd}t|ts&t|jdks4tt||j d|d< |d dksZtd S )NTnamecopyr<   ZSOMEBIGLONGSTRINGr   )	r6   r7   r   
isinstancer%   r<   r2   assert_numpy_array_equalvaluesr9   r"   r"   r#   test_constructor_copyL   s    
zTestIndex.test_constructor_copycast_as_objFz2015-01-01 10:00D   z
US/EasternzGreen Eggs & Ham)freqperiodstzr<   )rF   rG   1 daysz
2015-01-01c                 C   s   |rt |t}nt |}t|| t|tr|j|jksBt|r|t	j
dd7 }t |td}|jtjksrtt|t|kstd S )N2   )nanosecondsdtype)r   astypeobjectr2   r8   r?   r   rH   r%   pdZ	TimedeltarM   r6   object_r   )r!   rC   r&   resultr"   r"   r#   "test_constructor_from_index_dtlikeV   s    
z,TestIndex.test_constructor_from_index_dtlikezindex,has_tz)rF   rG   rH   c                 C   s0   t t|}t|| |r,|j|jks,td S r1   )r   r   r2   r8   rH   r%   )r!   r&   Zhas_tzrR   r"   r"   r#   #test_constructor_from_series_dtlikey   s    z-TestIndex.test_constructor_from_series_dtlikec                 C   sD   dddddg}t |dd}tt|}t |dd}t|| d S )N1-1-19902-1-19903-1-19904-1-19905-1-1990MSrF   )r   r   rP   to_datetimer2   r8   )r!   dtsexpectedsrR   r"   r"   r#   !test_constructor_from_series_freq   s
    z+TestIndex.test_constructor_from_series_freqc                 C   s   dddddg}t |dd}ttjdd	}||d
< t |d
 dd}|d
 jtksVtd
|_t	
|| t|d
d}t	|d
 | t|d
 }|dkstd S )NrU   rV   rW   rX   rY   rZ   r[      rE   dater<   )r   r   r6   randomZrandrM   rO   r%   r<   r2   r8   r   assert_series_equalrP   Z
infer_freq)r!   r]   r^   dfrR   rF   r"   r"   r#   'test_constructor_from_frame_series_freq   s    z1TestIndex.test_constructor_from_frame_series_freqc                 C   s2   t jg}t|t jd}t|dd}t|| d S )NrL   float)r6   nanr   float64r2   r8   )r!   datar^   rR   r"   r"   r#   test_constructor_int_dtype_nan   s    z(TestIndex.test_constructor_int_dtype_nanzklass,dtype,na_valzdatetime64[ns]c                 C   sP   ||g}||}|j |kstt|}t|| tt|}t|| d S r1   )rM   r%   r   r2   r8   r6   r7   )r!   klassrM   Zna_valZna_listr^   rR   r"   r"   r#   test_index_ctor_infer_nan_nat   s    	z'TestIndex.test_index_ctor_infer_nan_natz
vals,dtype         ra   intg?g@      @rh   ABCobjc                 C   s*   t ||d}||j|}t|| d S )Nrc   )r   Z_simple_newrA   r2   r8   )r!   valsrM   r&   rR   r"   r"   r#   test_constructor_simple_new   s    	z%TestIndex.test_constructor_simple_newattrrA   asi8rm   c           
   	   C   s  t ddd}t||}||}|j}|d k	}d}|dkrVt||}	t|	| nH|tkrtj	t
dd |||d W 5 Q R X n|||d}	t|	| |dkr|rtj	t
|d t|| W 5 Q R X nt||}	t|	| n|||d	}	t|	| |dkr2tt||}	t|	| nN|tkrdtj	t
dd |||d W 5 Q R X n|t||d}	t|	| |dkr|rtj	t
|d tt|| W 5 Q R X ntt||}	t|	| n|t||d	}	t|	| d S )
N
2011-01-01ra   rG   z:Cannot use .astype to convert from timezone-naive dtype tor{   zunexpected keywordr*   )rH   rL   )r   getattrZtz_localizerM   r   r2   r8   r   r,   r-   	TypeErrorrN   r   )
r!   Ztz_naive_fixturerz   rm   r&   argrM   errmsgrR   r"   r"   r#    test_constructor_dtypes_datetime   sL    




z*TestIndex.test_constructor_dtypes_datetimec                 C   s`   t jddd}|d }|j}t||}|||d}t|| |t||d}t|| d S )NrI   ra   r}   rL   )rP   timedelta_rangeZ
_with_freqrM   r~   r2   r8   r   )r!   rz   rm   r&   rM   rA   rR   r"   r"   r#   !test_constructor_dtypes_timedelta  s    

z+TestIndex.test_constructor_dtypes_timedeltavaluec                 c   s   | ]
}|V  qd S r1   r"   .0_r"   r"   r#   	<genexpr>  s     zTestIndex.<genexpr>r"   c                 C   s&   ||}t ||stt|r"td S r1   r?   r%   len)r!   r   rm   emptyr"   r"   r#   test_constructor_empty  s    z TestIndex.test_constructor_emptyzempty,klassr[   c                 c   s   | ]
}|V  qd S r1   r"   r   r"   r"   r#   r   1  s     )stepbluered)levelscodesc                 C   s   t ||stt|rtd S r1   r   )r!   r   rm   r"   r"   r#   test_constructor_empty_special,  s    z(TestIndex.test_constructor_empty_specialrj   float32int64int32ZperiodrangeZrepeats	timedeltaZtuplesuint64uint32c                 C   s   | d d S )Ni8)viewr/   r"   r"   r#   test_view_with_args:  s    zTestIndex.test_view_with_argscategoricalzgh-25464)reason)Zmarksbool-object
bool-dtyper   c              	   C   s`   |j tkr4d}tjt|d |d W 5 Q R X n(d}tjt|d |d W 5 Q R X d S )NzWhen changing to a larger dtyper*   r   z(Cannot change data-type for object array)rM   boolr,   r-   r.   r   r   r!   r&   r   r"   r"   r#   'test_view_with_args_object_array_raisesO  s    
z1TestIndex.test_view_with_args_object_array_raisesc                 C   s6   | d}|d d|_| d}|jdks2td S )Nr   ra   foobar)rN   get_locr<   r%   )r!   r&   Zcastedr"   r"   r#   test_astyped  s
    


zTestIndex.test_astypec                 C   s&   t dddgt dddgs"td S Nabcr   equalsr%   r    r"   r"   r#   test_equals_objectt  s    zTestIndex.test_equals_objectcompr   r   dr   c                 C   s   t dddg|rtd S r   r   )r!   r   r"   r"   r#   test_not_equals_objectx  s    z TestIndex.test_not_equals_objectc                 C   s   t dddg}t dddg}||s*t|d}||sBt||rPt|d}||shtt dddg}t dddgdd	}||rtd S )
Nr   r   r   foor   r   r   r   )r   r   F)Ztupleize_cols)r   	identicalr%   renamer   )r!   i1i2Zi3i4r"   r"   r#   test_identical~  s    

zTestIndex.test_identicalc                 C   s0  t td}||st||    s8t|t tdrNt|| r`t||jddrvt||d d  rt|ttdrt|| st| }d|_||st||st|t |j	rtttdd}t |dd}t |dd}||r,td S )N
   F)deepZbobro      r>   )
r   r   is_r%   r   r>   r6   r7   r<   rA   )r!   indZind2r:   Zind1r"   r"   r#   test_is_  s$    zTestIndex.test_is_c              	   C   s   t dddg}t ddgtd}d}tjt|d ||d	  W 5 Q R X tjttt	|d || W 5 Q R X tjttt	|d || W 5 Q R X d S )
Nro   rp   rE   TFrL   z$Cannot compare dtypes int64 and boolr*   r   )
r   rO   r,   r-   r   Zasofr   reescapestr)r!   leftrightr   r"   r"   r#    test_asof_numeric_vs_bool_raises  s    z*TestIndex.test_asof_numeric_vs_bool_raisesc                 C   s   t jt|td}d|ddd< || }t|D ]\}}|||ks0tq0|t| }t|D ]\}}|||ks`tq`d S )NrL   Fra      rp   )r6   Zonesr   r   	enumerater   r%   r   )r!   r&   Z
bool_indexZ	sub_indexivalr"   r"   r#   test_booleanindex  s    zTestIndex.test_booleanindexc                 C   s6   |}|dddg }|D ]}||| | kstqd S Nro   rp   rE   )r   r%   )r!   r$   r&   slr   r"   r"   r#   
test_fancy  s    zTestIndex.test_fancyrM   c                 C   sH   t jg |d}t|g |jd}|g  |s2t|| |sDtd S NrL   )r6   r7   typerM   r   r%   )r!   r&   rM   Z	empty_arrempty_indexr"   r"   r#   test_empty_fancy  s    zTestIndex.test_empty_fancyc              	   C   s^   t jg t jd}t|g |jd}|g  |s4td}tjt	|d ||  W 5 Q R X d S )NrL   z=arrays used as indices must be of integer \(or boolean\) typer*   )
r6   r7   Zfloat_r   rM   r   r%   r,   r-   
IndexError)r!   r&   Z
empty_farrr   r   r"   r"   r#   test_empty_fancy_raises  s    z!TestIndex.test_empty_fancy_raisesc                 C   s~   |}t ddd}||}||}t||d}t||sFtt||sVtt|| t|| t|| d S )Nz
2019-01-01r   r}   O)	r   unionr6   appendrN   r2   ZequalContentsr%   r3   )r!   r$   r&   
date_indexZ	first_catZ
second_catZappendedr"   r"   r#   test_union_dt_as_obj  s    

zTestIndex.test_union_dt_as_objc                 C   sn   t d}t ddd }tdd |D }t || |dd }tdd |D }t || d S )NrE   c                 S   s   | fS r1   r"   xr"   r"   r#   <lambda>      z0TestIndex.test_map_with_tuples.<locals>.<lambda>c                 S   s   g | ]
}|fqS r"   r"   r   r   r"   r"   r#   
<listcomp>  s     z2TestIndex.test_map_with_tuples.<locals>.<listcomp>c                 S   s   | | dkfS Nro   r"   r   r"   r"   r#   r     r   c                 S   s   g | ]}||d kfqS )ro   r"   r   r"   r"   r#   r     s     )r2   makeIntIndexmapr   r8   r   from_tuplesr!   r&   rR   r^   r"   r"   r#   test_map_with_tuples  s    
zTestIndex.test_map_with_tuplesc                 C   sB   dddg}t t|dddg}|dd }t|t| d S )	Nr   barbazro   rp   rE   c                 S   s   | d S Nr   r"   r   r"   r"   r#   r     r   z3TestIndex.test_map_with_tuples_mi.<locals>.<lambda>)r   r   zipr   r2   r8   r   )r!   Zfirst_levelZmulti_indexZreduced_indexr"   r"   r#   test_map_with_tuples_mi  s    
z!TestIndex.test_map_with_tuples_mimakeDateIndexZmakePeriodIndexZmakeTimedeltaIndexc                 C   s:   t t|d}tdgd }|dd }t|| d S )Nr   ro   c                 S   s   dS r   r"   r   r"   r"   r#   r     r   zATestIndex.test_map_tseries_indices_return_index.<locals>.<lambda>)r~   r2   r   r   r8   )r!   rz   r&   r^   rR   r"   r"   r#   %test_map_tseries_indices_return_index  s    z/TestIndex.test_map_tseries_indices_return_indexc                 C   s@   t jdddd}ttdddd}t j||dd d	d
 d S )N   hZhourly)rF   r<   r   )rM   r<   c                 S   s   | j S r1   )hourr   r"   r"   r#   r     r   zGTestIndex.test_map_tseries_indices_accsr_return_index.<locals>.<lambda>Texact)r2   r   r   r   r8   r   )r!   r   r^   r"   r"   r#   +test_map_tseries_indices_accsr_return_index  s    z5TestIndex.test_map_tseries_indices_accsr_return_indexmapperc                 C   s   dd t | |D S )Nc                 S   s   i | ]\}}||qS r"   r"   r   er   r"   r"   r#   
<dictcomp>   s      &TestIndex.<lambda>.<locals>.<dictcomp>r   rA   r&   r"   r"   r#   r      r   zTestIndex.<lambda>c                 C   s
   t | |S r1   r   r   r"   r"   r#   r   !  r   c                 C   s:   t dddg}td}|||j|}t|| d S )Nr   r   r   rE   )r   r2   r   r   rA   r8   )r!   r   r^   r&   rR   r"   r"   r#   test_map_dictlike_simple  s    	
z"TestIndex.test_map_dictlike_simplec                 C   s   dd t | |D S )Nc                 S   s   i | ]\}}||qS r"   r"   r   r"   r"   r#   r   .  s      r   r   r   r"   r"   r#   r   .  r   c                 C   s
   t | |S r1   r   r   r"   r"   r#   r   /  r   c                 C   s   t |trd S |jsd S tjt|ddtjd}|jr@tg }nJt	|j
r\|j||j
d}n.t|tkr|j
tkrt||j
d}nt|}||||}t|| d S )Nr   rL   )r?   r   	is_uniquer6   aranger   r   r   r   r	   rM   Z_constructorr   rO   r   r2   r8   )r!   r&   r   requestrngr^   rR   r"   r"   r#   test_map_dictlike+  s    	


zTestIndex.test_map_dictliker          @r   r   r   r&   )r   rp   r   c                 C   s4   t dtjdg}t dddg|}t|| d S )Nr  r   rp   ro   r   r   r6   ri   r   r2   r8   )r!   r   r^   rR   r"   r"   r#   )test_map_with_non_function_missing_valuesK  s    z3TestIndex.test_map_with_non_function_missing_valuesc                 C   s@   t dtjdtjdg}|jdd dd}|d }t|| d S )	Ng      ?rE   ra   c                 S   s   | d S )Nrp   r"   r   r"   r"   r#   r   Y  r   z1TestIndex.test_map_na_exclusion.<locals>.<lambda>ignore)Z	na_actionrp   r  r   r"   r"   r#   test_map_na_exclusionV  s    zTestIndex.test_map_na_exclusionc                 C   sJ   t dddg}tdd }d|d< ||}t dddg}t|| d S )Nro   rp   rE   c                   S   s   dS )Nblankr"   r"   r"   r"   r#   r   _  r   z0TestIndex.test_map_defaultdict.<locals>.<lambda>stuffr
  )r   r   r   r2   r8   )r!   r&   Zdefault_dictrR   r^   r"   r"   r#   test_map_defaultdict]  s    
zTestIndex.test_map_defaultdictzname,expected)r   r   )r   Nc                 C   s:   t g dd}t dddg|d}||}|j|ks6td S )Nr   rc   ro   rp   rE   )r   r   r<   r%   )r!   r<   r^   r   r   rR   r"   r"   r#   test_append_empty_preserve_namee  s    
z)TestIndex.test_append_empty_preserve_namezindex, expected)r5   F)r   F)r   F)r   F)r   T)r   T)r   T)r   T)r   F)rj   T)r   Tc                 C   s   t ||kstd S r1   )r   r%   r!   r&   r^   r"   r"   r#   test_is_numericm  s    zTestIndex.test_is_numeric)r5   T)r   T)r   F)r   F)r   F)r   F)rj   F)r   Fc                 C   s   t ||kstd S r1   )r
   r%   r  r"   r"   r#   test_is_object  s    zTestIndex.test_is_objectc                 C   s   |   d S r1   )Z_summaryr/   r"   r"   r#   test_summary  s    zTestIndex.test_summaryc                 C   sR   t  }t|dsBt|g}| }t|d g}||ksBttg   d S )NZ000r   )r   nowr   endswithr   formatr%   )r!   r  r&   	formattedr^   r"   r"   r#   test_format_bug  s    
zTestIndex.test_format_bugrx   y       @      @g      @c                 C   s   t |}|| t|td}| }t|tr4dnt|}t|d t|d t|d |g}||kslt|d |ks|td S )NrL   NaNr   ro   rp   rE   )	r   r   r   rO   r  r?   rh   r   r%   )r!   rx   nulls_fixturer&   r  Z	null_reprr^   r"   r"   r#   test_format_missing  s    
$zTestIndex.test_format_missingopanyallc                 C   s&   |}t || t |j| ks"td S r1   )r~   rA   r%   )r!   r  r$   r&   r"   r"   r#   test_logical_compat  s    zTestIndex.test_logical_compatc                 C   sx   t |}|ttdd }||}|ttdttd|  }t|| ||d }|dd  }t|| d S )Nra   r   r   ro   )r   r   r   dropr2   r8   )r!   r&   nr  droppedr^   r"   r"   r#   test_drop_by_str_label  s    
z TestIndex.test_drop_by_str_labelkeysr   1c              	   C   s(   t jtdd || W 5 Q R X d S )N r*   )r,   r-   KeyErrorr  )r!   r&   r"  r"   r"   r#   *test_drop_by_str_label_raises_missing_keys  s    z4TestIndex.test_drop_by_str_label_raises_missing_keysc                 C   s   t |}|ttdd }| dg }|j|dd}|ttdttd|  }t|| |jddgdd}|tt| }t|| d S )Nra   r   r   r  errorsr   )r   r   r   tolistr  r2   r8   )r!   r&   r  r  mixedr   r^   r"   r"   r#   $test_drop_by_str_label_errors_ignore  s    z.TestIndex.test_drop_by_str_label_errors_ignorec                 C   s4   t dddg}|d}t ddg}t|| d S r   r   r  r2   r8   )r!   r&   r   r^   r"   r"   r#   test_drop_by_numeric_label_loc  s    
z(TestIndex.test_drop_by_numeric_label_locc              	   C   s:   t dddg}tjtdd |ddg W 5 Q R X d S )Nro   rp   rE   r$  r*   rq   )r   r,   r-   r%  r  r/   r"   r"   r#   .test_drop_by_numeric_label_raises_missing_keys  s    z8TestIndex.test_drop_by_numeric_label_raises_missing_keyszkey,expectedc                 C   s,   t dddg}|j|dd}t|| d S )Nro   rp   rE   r  r'  r,  )r!   r'   r^   r&   r   r"   r"   r#   (test_drop_by_numeric_label_errors_ignore  s    z2TestIndex.test_drop_by_numeric_label_errors_ignore)r   r   to_dropc           	   
   C   s   t |}t dg}||}t|| ||d }|d |d gfD ]}||}t|| qH||d }dt|d   d}|d |d gfD ](}tjt	|d || W 5 Q R X qd S )Nr   r   ro   z\"\[z\] not found in axis\"r*   )
r   r  r2   r8   r   r   __repr__r,   r-   r%  )	r!   rA   r0  r&   r^   rR   removedZdrop_mer   r"   r"   r#   test_drop_tuple  s    


zTestIndex.test_drop_tuplec                 C   sj   t |dkst|trd S t|tr2ts2td | d}|dd  }|	|d }t
|| d S )Nr   z=Cannot test IntervalIndex with int64 dtype on 32 bit platformrp   )r   r?   r   r   r   r,   skipuniquerepeatr  r2   r8   r!   r&   r^   rR   r"   r"   r#   "test_drop_with_duplicates_in_index  s    
z,TestIndex.test_drop_with_duplicates_in_indexis_monotonic_increasingis_monotonic_decreasing!_is_strictly_monotonic_increasing!_is_strictly_monotonic_decreasingc                 C   s$   t dt dg}t||r td S )Nra      )r   r   r  r~   r%   )r!   rz   r&   r"   r"   r#   test_is_monotonic_incomparable  s    
z(TestIndex.test_is_monotonic_incomparableZquuxindex,expectedZquxrL   c                 C   s   | |}t|| d S r1   )isinr2   r@   )r!   rA   r&   r^   rR   r"   r"   r#   	test_isin'  s    	
zTestIndex.test_isinc                 C   s   t |trPt |trPt|rPt|rPttd|g|gt	ddg nV||krttd|g|gt	ddg n&ttd|g|gt	ddg d S )Nr   FT)
r?   rh   mathisnanr2   r@   r   r@  r6   r7   )r!   r  Znulls_fixture2r"   r"   r#   test_isin_nan_common_object3  s*    z%TestIndex.test_isin_nan_common_objectc              	   C   s   |}|t jks|t jkrdtt|j }tjt|d t	d|g|d W 5 Q R X t	dt
jg|d}||g r|td S t	d|g|d}|t
jg}t|t
ddg |t jg}t|t
ddg d S )Nz=float\(\) argument must be a string or a (real )?number, not r*         ?rL   FT)rP   NaTZNAreprr   __name__r,   r-   r   r   r6   ri   r@  r  r%   r2   r@   r7   )r!   r  Zfloat_numpy_dtyperM   r   idxresr"   r"   r#   test_isin_nan_common_float64O  s    z&TestIndex.test_isin_nan_common_float64levelrE  c                 C   s^   |  dd  dg }tddddg}t||j||d d|_t||j|dd d S )NZnonexistingFTrL  r   )r)  r6   r7   r2   r@   r@  r<   )r!   rL  r&   rA   r^   r"   r"   r#   test_isin_level_kwargh  s
    	zTestIndex.test_isin_level_kwargc              
   C   sF   d|j |j d  fD ],}tjtdd |jg |d W 5 Q R X qd S )Nr   ro   zToo many levelsr*   rN  )Znlevelsr,   r-   r   r@  )r!   r&   rL  r"   r"   r#   &test_isin_level_kwarg_bad_level_raisesy  s    z0TestIndex.test_isin_level_kwarg_bad_level_raiseslabelr   Zxyzzyc              	   C   sv   t |tr4|ddg|jdd   }d| d}n|d}d| d}tjt|d |jg |d	 W 5 Q R X d S )
Nr   r   rp   z'Level z not found'zRequested level \(z$\) does not match index name \(foo\)r*   rN  )r?   r   r   namesr,   r-   r%  r@  )r!   rQ  r&   r   r"   r"   r#   &test_isin_level_kwarg_bad_label_raises~  s    

z0TestIndex.test_isin_level_kwarg_bad_label_raisesc                 C   s4   t ddg}tddg}||}t|| d S )Nr   r   F)r   r6   r7   r@  r2   r@   )r!   r   r&   r^   rR   r"   r"   r#   test_isin_empty  s    
zTestIndex.test_isin_emptyz
2018-01-01c                 C   s6   t |}||k}tjddddgtd}t|| d S )NTrL   )r   r6   r7   r   r2   r@   )r!   rA   r&   rR   r^   r"   r"   r#   test_boolean_cmp  s    zTestIndex.test_boolean_cmpz
name,levelr   r   c                 C   s,   |  }|r||_||}t|| d S r1   )r>   r<   Zget_level_valuesr2   r8   )r!   r&   r<   rL  r^   rR   r"   r"   r#   test_get_level_values  s
    
zTestIndex.test_get_level_valuesc                 C   s,   t ddgdd}|j|dd  jks(td S )Nr   r   Zasdfrc   ro   r   r<   r%   r/   r"   r"   r#   test_slice_keep_name  s    zTestIndex.test_slice_keep_namec                 C   s   |j ||d}||kstd S Nhow)joinr%   )r!   r&   Z	join_typeZjoinedr"   r"   r#   test_join_self  s    zTestIndex.test_join_selfmethodstriprstriplstripc                    sF   t ddddg}t  fdd|jD }t|j  }t|| d S )Nz jackzjill z jesse Zfrankc                    s   g | ]}t t |qS r"   )r~   r   r   r   r^  r"   r#   r     s     z0TestIndex.test_str_attribute.<locals>.<listcomp>)r   rA   r~   r   r2   r8   )r!   r^  r&   r^   rR   r"   rc  r#   test_str_attribute  s    zTestIndex.test_str_attributer   )r   r#  )r   32000Z2010)startendrF   c              	   C   s*   t jtdd |jd W 5 Q R X d S )Nzonly use .str accessorr*   rp   )r,   r-   AttributeErrorr   r6  r/   r"   r"   r#   test_str_attribute_raises  s    
z#TestIndex.test_str_attribute_raiseszexpand,expectedNr   f)r   r   r   c                 C   s@   t dddg}|d k	r&|jj|d}n
|j }t|| d S )Nza b czd erk  )expand)r   r   splitr2   r8   )r!   rl  r^   r&   rR   r"   r"   r#   test_str_split  s
    
zTestIndex.test_str_splitc                 C   sN   t ddddg}|jd}tddddg}t|| t|tjsJt	d S )Na1a2b1b2r   TF)
r   r   
startswithr6   r7   r2   r@   r?   Zndarrayr%   r   r"   r"   r#   test_str_bool_return  s
    zTestIndex.test_str_bool_returnc                 C   sV   t ddddg}ttd|d}||jjd }ttdddgd}t|| d S )	Nro  rp  rq  rr  rq   r  r   rp   )r   r   r   r&   r   rs  r2   re   )r!   r&   r_   rR   r^   r"   r"   r#   test_str_bool_series_indexing  s
    z'TestIndex.test_str_bool_series_indexingabcdc                 C   s   dt |k}||kstd S )Nr   )dirr%   r7  r"   r"   r#   test_tab_completion   s    zTestIndex.test_tab_completionc                 C   s`   t ddddddg}|dd t ddgtjds8t|ddg t ddgtjds\td S )	Nro   rp   rE   r   r   r   rL   r   )r   r   r6   rQ   r%   r/   r"   r"   r#   !test_indexing_doesnt_change_class  s    $z+TestIndex.test_indexing_doesnt_change_classc              	   C   sz   t tjd}td}tt |j|dd}W 5 Q R X tt |	t
|	t
}W 5 Q R X t|| d S )N   r   outerrZ  )r   r6   rd   Zpermutationr2   r   assert_produces_warningRuntimeWarningr\  rN   rO   r   r8   )r!   Z
left_indexZright_indexrR   r^   r"   r"   r#   test_outer_join_sort  s    
 zTestIndex.test_outer_join_sortc                 C   s   t tddd}|tdddg}t tddd}t|| |jtdddgdd	}t d
dtjgdd}t|| |jtdddgddd}t d
ddgdd}t|| d S )NABCxxxrc   ro   r   r   ZBACT
fill_valueru   rt   F)Z
allow_fillr  rv   )r   r   taker6   r7   r2   r8   ri   r   r"   r"   r#   test_take_fill_value  s    zTestIndex.test_take_fill_valuec              	   C   s   t tddd}d}tjt|d  |jtdddgd	d
 W 5 Q R X tjt|d  |jtdddgd	d
 W 5 Q R X d S )Nr  r  rc   zJWhen allow_fill=True and fill_value is not None, all indices must be >= -1r*   ro   r   rM  Tr  )r   r   r,   r-   r.   r  r6   r7   r   r"   r"   r#    test_take_fill_value_none_raises-  s    $z*TestIndex.test_take_fill_value_none_raisesc              	   C   sB   t tddd}tjtdd |tddg W 5 Q R X d S )Nr  r  rc   zout of boundsr*   ro   r  )r   r   r,   r-   r   r  r6   r7   r/   r"   r"   r#   test_take_bad_bounds_raises9  s    z%TestIndex.test_take_bad_bounds_raisesr<   labelsZ20130101r}   c                 C   s0   t dddg}||_||d j|ks,td S )Nr   ro   rp   )r   r<   reindexr%   )r!   r<   r  r&   r"   r"   r#   8test_reindex_preserves_name_if_target_is_list_or_ndarray>  s    zBTestIndex.test_reindex_preserves_name_if_target_is_list_or_ndarrayc                 C   s,   t td}||d jjtjks(td S Nabcr   )r   r   r  rM   r   r6   rQ   r%   )r!   r  r&   r"   r"   r#   <test_reindex_preserves_type_if_target_is_empty_list_or_arrayS  s    zFTestIndex.test_reindex_preserves_type_if_target_is_empty_list_or_arrayzlabels,dtypec                 C   s*   t td}||d jj|ks&td S r  )r   r   r  rM   r   r%   )r!   r  rM   r&   r"   r"   r#   :test_reindex_doesnt_preserve_type_if_target_is_empty_indexY  s    zDTestIndex.test_reindex_doesnt_preserve_type_if_target_is_empty_indexc                 C   s8   |}t td}t g |d}||d j|ks4td S )Nr  rL   r   )r   r   r  rM   r%   )r!   Zany_real_numpy_dtyperM   r&   r  r"   r"   r#   Btest_reindex_doesnt_preserve_type_if_target_is_empty_index_numericd  s    zLTestIndex.test_reindex_doesnt_preserve_type_if_target_is_empty_index_numericc                 C   sl   t td}|tt g tjt g tjgg g gd }|jd jj	tjksPt
|jd jj	tjksht
d S )Nr  r   ro   )r   r   r  r   r6   r   rj   r   rM   r   r%   )r!   r&   rR   r"   r"   r#   -test_reindex_no_type_preserve_target_empty_mim  s     z7TestIndex.test_reindex_no_type_preserve_target_empty_mic                 C   s\   t dddgdd}t ddddgdd}t ddddgdd}|j|dd\}}t|| d S )Nro   rp   rE   r   rc   rq   rN  )r   r  r2   r8   )r!   rI  Zidx2r^   rR   r   r"   r"   r#   test_reindex_ignoring_levelu  s
    z%TestIndex.test_reindex_ignoring_levelc              	   C   sR   t td}|tdddddg}t ddgt dddgd}t|| d S )Nra   ro   rp   r   rE   rq   ro   rp   )r   r   groupbyr6   r7   r2   Zassert_dict_equalr   r"   r"   r#   test_groupby}  s    zTestIndex.test_groupbyzmi,expectedr  rq   ra   )rq      c                 C   s0   t jtdddgd}|j|k}t|| d S )Na,b,c
1,2,3
4,5,6r   ro   Z	index_col)rP   read_csvr   r&   r2   r@   )r!   mir^   rf   rR   r"   r"   r#   test_equals_op_multiindex  s    

z#TestIndex.test_equals_op_multiindexc                 C   s@   t jtdddgd}|j|jk}tddg}t|| d S )Nr  r   ro   r  T)rP   r  r   r&   r6   r7   r2   r@   )r!   rf   rR   r^   r"   r"   r#   "test_equals_op_multiindex_identify  s    z,TestIndex.test_equals_op_multiindex_identify   	   c              	   C   s>   t jtdddgd}tjtdd |j|k W 5 Q R X d S )Nr  r   ro   r  zLengths must matchr*   )rP   r  r   r,   r-   r.   r&   )r!   r&   rf   r"   r"   r#   +test_equals_op_mismatched_multiindex_raises  s    z5TestIndex.test_equals_op_mismatched_multiindex_raisesc                 C   sF   t dddg}tdddg}||k}tdddg}t|| d S )Nr  r  r  r   r   r   F)r   r   r   r6   r7   r2   r@   )r!   r  r&   rR   r^   r"   r"   r#   &test_equals_op_index_vs_mi_same_length  s
    z0TestIndex.test_equals_op_index_vs_mi_same_lengthzdt_conv, arg
2000-01-01
2000-01-02z01:02:03z01:02:04c                 C   s$   t |dd}|j||jks td S )NrQ  rc   rW  )r!   Zdt_convr   r&   r"   r"   r#   !test_dt_conversion_preserves_name  s    	z+TestIndex.test_dt_conversion_preserves_namec              	   C   s2   t dddg}tjtdd d|_W 5 Q R X d S )Nro   rp   rE   zCan't set attributer*   F)r   r,   r-   ri  r   r/   r"   r"   r#   #test_cached_properties_not_settable  s    z-TestIndex.test_cached_properties_not_settablec              
      sn   t jddd ddlm} d}||I d H  td , |d t|j	dd	 W 5 Q R X W 5 Q R X d S )
NZIPythonz6.0.0)Z
minversionr   )provisionalcompleterz+import pandas as pd; idx = pd.Index([1, 2])r  zidx.rq   )
r,   ZimportorskipZIPython.core.completerr  Zrun_coder2   r|  r   Z	CompleterZcompletions)r!   ipr  coder"   r"   r#   test_tab_complete_warning  s    
z#TestIndex.test_tab_complete_warningc              	   C   sP   t |tr|d n6dt|j d}tjt|d |d W 5 Q R X d S )Nro   'z$' object has no attribute 'contains'r*   )r?   r   containsr   rH  r,   r-   ri  r   r"   r"   r#   test_contains_method_removed  s
    
z&TestIndex.test_contains_method_removedc              	   C   s  t dddddg}tjtdd |jdd	 W 5 Q R X tjtd
d |jddgd	 W 5 Q R X tjtdd |jdgd	 W 5 Q R X t dddddg}|jdgd	}t|d | t dddddg}|jdd	}t|d | t dddddg}|jdd	}t|d | d S )Nra   rq   rE   rp   ro   z(ascending must be a single bool value orr*   True)Z	ascendingz3ascending must be a list of bool values of length 1Tzascending must be a bool valuer   F)r   r,   r-   	ExceptionZ	sortlevelr2   r8   r7  r"   r"   r#   test_sortlevel  s&     zTestIndex.test_sortlevel)rH  
__module____qualname__r   r   r,   fixturer$   r(   markparametrizer0   r4   r;   rB   r   rP   r   r   rS   rT   r`   rg   rl   r6   rj   ri   r   rF  rn   ry   r   r   r   iterr   r   r   r   r   r   r   paramZxfailr   r   r   r   r   r   r   r   r   int_Zbool_r   r   r   r   r   r   r   r   r  r   r  r	  r  r  r  r  r  r  r  r  r!  r&  r+  r-  r.  r/  r3  r8  r>  r7   r   rA  rD  rK  rO  rP  rS  rO   rT  rU  rV  rX  r]  rd  r   r2   r   r   rj  rn  rt  ru  r   rx  ry  r~  r  r  r  rA   r)  r  r   r  Z
datetime64r  r  r  r  r  r  r  r  r  r\   to_timedeltar  r  r   r  r  r  r"   r"   r"   r#   r   -   s  


	



9 	





  


 


"





  
    
 &
	
 	








	"  		  &		r   c                   @   s  e Zd ZeZejedddZejdddddd	ggd
gddd Zdd Z	dd Z
dd Zdd Zdd Zdd Zejdddgejddedgejd ddd!gddd!gfd"d#d$gd"d#d$gfd"d#ejd$gd"d#d$gfd%d&d'gd%d&d'gfd%ejd&d'gd%d&d'gfgd(d) Zejdddgejd*ed+d,d-ged+d,d-gfed+d,d-ejged+d,d-gfed.d/d0ged.d/d0gfeejd.d/d0ejged.d/d0gfed1d2d3gd4d5ed1d2d3gd4d5fed1d2d6d3gd4d5ed1d2d3gd4d5fgd7d8 Zd9d: 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d6ged6d<ged<d6d=ged>d6ggd?d@ ZdAdB ZdCdD Z ej!dEdFdG Z"dS )HTestMixedIntIndexr   c                 C   s   |  ddddddgS )Nr   r   ro   r   rp   r   )r   r    r"   r"   r#   r$     s    zTestMixedIntIndex.simple_indexr   r   ro   r   rp   r   Z
mixedIndex)paramsZidsc                 C   s
   t |jS r1   )r   r  )r!   r  r"   r"   r#   r&     s    zTestMixedIntIndex.indexc              	   C   s*   |}t jtdd |  W 5 Q R X d S Nz'>|<' not supportedr*   )r,   r-   r   argsortr!   r$   r&   r"   r"   r#   test_argsort   s    zTestMixedIntIndex.test_argsortc              	   C   s,   |}t jtdd t| W 5 Q R X d S r  )r,   r-   r   r6   r  r  r"   r"   r#   test_numpy_argsort  s    z$TestMixedIntIndex.test_numpy_argsortc                 C   s   |}t ||ddd}t ||dd}||k	s2tt|| |jdksLt|jdksZttd|d}td|d d	 d}|| }|jjdkstd S )
NTZmarior=   Fr   rp   r  rE   r   )r   r%   r2   r8   r<   r   r&   )r!   r$   r&   firstseconds1s2Zs3r"   r"   r#   test_copy_name
  s    z TestMixedIntIndex.test_copy_namec                 C   s`   t ddgdd}| }t|| |jdd}tj||dd |jdksNt|jdks\td S )Nro   rp   ZMyNamerc   ZNewNameF)Zcheck_names)r   r>   r2   r8   r<   r%   )r!   r&   Zindex1index2r"   r"   r#   test_copy_name2   s    z!TestMixedIntIndex.test_copy_name2c                 C   sB   t dtjddgdd}t dtjdgdd}| }t|| d S )Nrp   ro   Zmy_indexrc   )r   r6   ri   r5  r2   r8   )r!   rI  r^   rR   r"   r"   r#   test_unique_na-  s    z TestMixedIntIndex.test_unique_nac                 C   s4   |}|  |j  kst| |j ks0td S r1   )r  rA   r%   r  r  r"   r"   r#   r  3  s    z%TestMixedIntIndex.test_logical_compatr[  r  r  rM   Ncategoryzvals,expectedrE   rE  r  rs   rt   ru   rv   c                 C   s4   t ||d}|j|d}t ||d}t|| d S )NrL   rZ  )r   dropnar2   r8   )r!   r[  rM   rx   r^   r&   rR   r"   r"   r#   test_dropna8  s    zTestMixedIntIndex.test_dropnar?  r|   z
2011-01-02z
2011-01-03rI   z2 daysz3 daysz2012-02z2012-04z2012-05Mr[   rF  c                 C   s   |j |d}t|| d S rY  )r  r2   r8   )r!   r[  r&   r^   rR   r"   r"   r#   test_dropna_dt_likeK  s    z%TestMixedIntIndex.test_dropna_dt_likec              	   C   s8   d}t jt|d tdddgjdd W 5 Q R X d S )Nzinvalid how option: xxxr*   ro   rp   rE   r  rZ  )r,   r-   r.   r   r  )r!   r   r"   r"   r#   test_dropna_invalid_how_raisesm  s    z0TestMixedIntIndex.test_dropna_invalid_how_raisesr&   r  r  z1 dayc                 C   s<   |j dkst|jdkst|jdks*t|jdks8td S NF)r9  r%   r:  r;  r<  r/   r"   r"   r#   test_is_monotonic_nar  s    z&TestMixedIntIndex.test_is_monotonic_nac                 C   s:   t dddgdd}|ttd|d}dt|ks6td S )	Nr   r   r   r   rc   rE   r  0)r   r   r   rG  r%   )r!   Zframe_or_seriesr&   rR   r"   r"   r#   test_int_name_format  s    z&TestMixedIntIndex.test_int_name_formatc              	   C   s@   t dd tdD }d}tjt|d t| W 5 Q R X d S )Nc                 S   s   g | ]}t |qS r"   )r   rb  r"   r"   r#   r     s     z>TestMixedIntIndex.test_str_to_bytes_raises.<locals>.<listcomp>r   z2^'str' object cannot be interpreted as an integer$r*   )r   r   r,   r-   r   bytesr   r"   r"   r#   test_str_to_bytes_raises  s    z*TestMixedIntIndex.test_str_to_bytes_raisesz2ignore:elementwise comparison failed:FutureWarningc                 C   s6   t dddg}|dk}tdddg}t|| d S )Nr   )r   r   )r   r   FT)r   r6   r7   r2   r@   )r!   rI  rR   r^   r"   r"   r#   test_index_with_tuple_bool  s    z,TestMixedIntIndex.test_index_with_tuple_bool)#rH  r  r  r   r   r,   r  r$   r&   r  r  r  r  r  r  r  r  rO   r6   ri   r  r   rP   rF  r   r   r  r  r\   r  r  r  r  filterwarningsr  r"   r"   r"   r#   r    s   





r  c                   @   s   e Zd Zejddddggdedddgfdddggdgeddd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dfgdd Zdd Z	dd Z
dd ZdS )TestIndexUtilszdata, names, expectedro   rp   rE   Nr<   rc   r   r   r   r   ZL1ZL2)rR  c                 C   s   t ||}t|| d S r1   )r   r2   r8   )r!   rk   rR  r^   rR   r"   r"   r#    test_ensure_index_from_sequences  s    
z/TestIndexUtils.test_ensure_index_from_sequencesc                 C   s`   t jddddt jddddt jddddt jdd	d
dg}t|}t|td}t|| d S )Nr   ro   r   )closedrp   r   rE   Zneitherrq   ZbothrL   )rP   ZIntervalr   r   rO   r2   r8   )r!   Z	intervalsrR   r^   r"   r"   r#   (test_ensure_index_mixed_closed_intervals  s    z7TestIndexUtils.test_ensure_index_mixed_closed_intervalsc                 C   sF   dt t jjg}t|}t||ks*tt|dd}t	|| d S )Nr   r   rL   )
r6   Ziinfor   maxr   r   r%   r   r2   r8   )r!   rA   rR   r^   r"   r"   r#   test_ensure_index_uint64  s
    z'TestIndexUtils.test_ensure_index_uint64c                 C   s    t g }tg }t|| d S r1   )r   r   r2   r8   )r!   rR   r^   r"   r"   r#   test_get_combined_index  s    z&TestIndexUtils.test_get_combined_index)rH  r  r  r,   r  r  r   r   r  r  r  r  r"   r"   r"   r#   r    s$    &
r  opnameeqneleltgegtaddZraddsubZrsubmulZrmultruedivZrtruedivfloordivZ	rfloordivpowZrpowmoddivmodc                 C   s(   d|  d} t || }|j| ks$td S )N__)r~   rH  r%   )r  r&   r^  r"   r"   r#   test_generated_op_names  s    
r  index_makerc              	   C   s(   t jtdd | dd W 5 Q R X d S )Nzunexpected keyword argumentr*   r   )r   )r,   r-   r   )r  r"   r"   r#   ,test_index_subclass_constructor_wrong_kwargs  s    r  c               	   C   s   d} t jt| d" ttjddgtdddd W 5 Q R X t jt| d$ ttjd	d
dgddddd W 5 Q R X t jt| d tddd
ddd W 5 Q R X t jt| d tdddgddd W 5 Q R X d S )Nz[Uu]nexpected keyword argumentr*   r   r   rL   testT)r<   Zfastpathro   rp   rE   r   r   ra   r   )	r,   r-   r   r   r6   r7   rO   r   r   )r   r"   r"   r#   test_deprecated_fastpath  s    &(r  c               	   C   s>   t ddddg} tjtdd | d d d f  W 5 Q R X d S )Nr   ro   rp   rE   r)   r*   )r   r,   r-   r.   )rI  r"   r"   r#   test_shape_of_invalid_index  s    r  rM   c              	   C   s   d}t dddd}tjt|d t|| d W 5 Q R X t|dd}tjt|d t|| d W 5 Q R X tdt	d}tjt|d  t j
ddggd | d|_W 5 Q R X d S )	Nz Index data must be 1-dimensionalr  rp   r*   rL   rq   r   rE   )r6   r   Zreshaper,   r-   r.   r   r   r   r   r7   r&   )rM   r   r:   rf   Zserr"   r"   r#   test_validate_1d_input  s    r  zklass, extra_kwargsc                    s   g | ]  fd di gqS )c                    s   t |  dS r   )r   r   Zdtypr"   r#   r   (  r   z<listcomp>.<lambda>r"   )r   r"   r  r#   r   (  s     r   rF   Yc                 C   sB   | t tddf|}| ttddf|}tj||dd d S )Ni  i  Tr   )
memoryviewr6   r   r   r   r2   r8   )rm   extra_kwargsrR   r^   r"   r"   r#   test_construct_from_memoryview$  s    r  r  c                 C   sL   t tjg}tdg}| ||}t|| | || }t|| d S r  )r   r6   ri   r7   r2   r@   r>   )r  rI  r^   rR   r"   r"   r#   test_nan_comparison_same_object5  s    
r  )?collectionsr   r   ior   rB  operatorr   numpyr6   r,   Zpandas.compatr   Zpandas.errorsr   Zpandas.util._test_decoratorsr   Zpandas.core.dtypes.commonr   r	   r
   ZpandasrP   r   r   r   r   r   r   r   r   r   r   Zpandas._testingZ_testingr2   Zpandas.core.indexes.apir   r   r   r   r   Zpandas.tests.indexes.commonr   r   r  r  r  r  r  Zindex_subclass_makers_generatorr  r  r  r   r   rj   r  ZALL_REAL_NUMPY_DTYPESr  r  r  r  r"   r"   r"   r#   <module>   s   0         N +4





