a
    dt8                     @   s|  d Z ddlZddlZddlZddlZddlmZ	 ej
jddZG dd dZG dd dZej
jd	ed
d
geddgeddgeeddgd eedgd eedgd eddgeedd
gd ejddgg	dd ddd Zdd Zdd Zdd Zej
dej ddd d!d fej d"d d!d fej d#d$d d d!d%fgd&d' Z!d(d) Z"dS )*z1Tests dealing with the NDFrame.allows_duplicates.    NzNot implemented.reasonc                   @   s  e Zd Zejdeje	g fejddgfej
i fej
dddgifgdd Zejdedged	ded
ejed
dedejgdd Zejdejdg ddejdddgdgedd Zdd Zdd Zejdd	dgejdddgejddejddgddgdd  Zd!d" Zd#d$ Zejd%ejdddgdejdd&d'gdgi fejdddgdejdddgdgd(difejdddgdejdddgdgd)difej
dddgiddgdej
dddgid&d'gdgi fej
dddgiddgdej
dddgiddgdgd(difej
dddgiddgdej
d*ddgiddgdgd)difej
dddgiddgdejddgddgd*d+gd)difgd,d- Zejd.ejej
dddgiddgdjdd/ej
d*ddgidd'gdjdd/ded0ejej
dddgiddgdjdd/ej
d*ddgidd'gdded0ej
dddgiddgdej
d*ddgidd'gddfgd1d2 Zed3d4 Zejdddged5d6 Zd7S )8TestPreservesz	cls, data      Ac                 C   s<   ||}|j jdu sJ ||jdd}|j jdu s8J d S )NTFallows_duplicate_labels)flagsr	   	set_flags)selfclsdataresult r   s/var/www/html/stable-diffusion-webui/venv/lib/python3.9/site-packages/pandas/tests/generic/test_duplicate_labels.pytest_construction_ok   s    
z"TestPreserves.test_construction_okfuncaaddrenamenameabsc                 C   s6   t jddgddgdjdd}||jjdu s2J d S Nr   r   r   bindexFr   )pdSeriesr   r
   r	   )r   r   sr   r   r   test_preserved_series!   s    z#TestPreserves.test_preserved_seriesotherr   r   r   cr   r   c                 C   sP   t jddgddgdjdd}||\}}|jjdu s<J |jjdu sLJ d S r   )r   r   r   Zalignr
   r	   )r   r!   r   r   r   r   r   r   
test_align0   s    zTestPreserves.test_alignc                 C   sf   t jddgddgdddgdjd	d
}|jdg jjd	u s@J |jd d ddgf jjd	u sbJ d S )Nr   r         r   Br   r   r   Fr   r   r(   )r   	DataFramer   locr
   r	   r   dfr   r   r   test_preserved_frame;   s
     z"TestPreserves.test_preserved_framec                 C   s,   t jtdjdd}| jjdu s(J d S )N)dtypeFr   )r   r   floatr   to_framer
   r	   )r   Zserr   r   r   test_to_frameB   s    zTestPreserves.test_to_framesubframeFTr   c                 C   sx   t jddgdddgdjdd}|r,| }t|t jrD|rD| }t||}|jjdu s`J ||jjdu stJ d S )	Nr   r   r   r   r   )r   r   Fr   )	r   r   r   r0   
isinstanceoperatormethodcallerr
   r	   )r   r   r!   r3   r,   r   r   r   test_binopsF   s    zTestPreserves.test_binopsc                 C   s   t dddgijdd}|dg jjdu s0J |d jjdu sDJ |jd jjdu sZJ |jdg jjdu srJ |jddgf jjdu sJ d S )Nr   r   r   Fr   r   )r   r)   r   r
   r	   r*   r+   r   r   r   test_preserve_getitemU   s    z#TestPreserves.test_preserve_getitemc                 C   sf   |s|j tjjdd tddgijdd}|d jj	du sFJ d|j_	|d jj	du sbJ d S )NzUnclear behavior.r   r   r   Fr   T)
nodeZ
add_markerpytestmarkxfailr   r)   r   r
   r	   )r   requestZusing_copy_on_writer,   r   r   r   "test_ndframe_getitem_caching_issue]   s    z0TestPreserves.test_ndframe_getitem_caching_issueobjs, kwargsr#   dZignore_indexaxisr(   r   r   c                 C   s4   dd |D }t j|fi |}|jjdu s0J d S )Nc                 S   s   g | ]}|j d dqS Fr   r   .0xr   r   r   
<listcomp>       z-TestPreserves.test_concat.<locals>.<listcomp>F)r   concatr
   r	   )r   objskwargsr   r   r   r   test_concatg   s    :zTestPreserves.test_concatzleft, right, expectedr   )Zmarksc                 C   s&   t j||ddd}|jj|u s"J d S )NTZ
left_indexZright_index)r   merger
   r	   )r   leftrightexpectedr   r   r   r   
test_merge   s     zTestPreserves.test_mergec                 C   sB   t dg dijdd}|g dd}|jjdu s>J d S )Nr   )r   r   r%   Fr   )r   r   r   count)r   r)   r   groupbyZaggr
   r	   )r   r,   r   r   r   r   test_groupby   s    zTestPreserves.test_groupbyc                 C   sz   t jdt jdddddd}|r(| }|d jjdu sBJ |d jjdu s\J |	d jjdu svJ d S )	Nr   2000   )Zperiodsr   F)r   r   r	   r%   )
r   r   Z
date_ranger0   Zrollingmeanr
   r	   ZewmZ	expanding)r   r3   r,   r   r   r   test_window   s    zTestPreserves.test_windowN) __name__
__module____qualname__r;   r<   parametrizer   r   nparrayr)   r   r6   
itemgetterr7   strupperr   r    not_implementedr$   r-   r1   r8   r9   r?   rN   paramr   rT   rW   r[   r   r   r   r   r      s   	




$
		
		
9




r   c                   @   s  e Zd Zejdejddgedfej	dddgifej	ddgddgdfej	dddgifgdd	 Z
ejd
ejddgedej	ddgdej	ddgdgdd Zdd Zejdeddgdfeddgdfeedddgfdeddgdfdfeddgdfeedddgfdeeddgdfdgdd Zejdejdddgddejdddgddgddifgdd Zed d! ZdS )"
TestRaisesz	cls, axesr   )r   r.   r   r   )r   columnsrh   c                 C   sn   |f i |}|j jdu sJ d}tjtjj|d& |f i |jdd W d    n1 s`0    Y  d S )NTIndex has duplicates.matchFr   )r
   r	   r;   raisesr   errorsDuplicateLabelErrorr   )r   r   Zaxesr   msgr   r   r   test_set_flags_with_duplicates   s
    
z)TestRaises.test_set_flags_with_duplicatesr   r   r   rh   c                 C   sR   d}t jtjj|d d|j_W d    n1 s40    Y  |jjdu sNJ d S )Nri   rj   FT)r;   rl   r   rm   rn   r
   r	   )r   r   ro   r   r   r   +test_setting_allows_duplicate_labels_raises   s    	&z6TestRaises.test_setting_allows_duplicate_labels_raisesc                 C   sx   t jdddgd}t jddgddgdjdd}d}tjt jj|d	 t ||g W d    n1 sj0    Y  d S )
Nr   r   r   r   r   Fr   ri   rj   )r   r   r   r;   rl   rm   rn   rK   r   r   r   ro   r   r   r   test_series_raises  s
    zTestRaises.test_series_raiseszgetter, targetr   Nr*   Zilocc                 C   s~   t jddgddgdddgdjd	d
}|r8t||}n|}d}tjt jj|d || W d    n1 sp0    Y  d S )Nr   r   r%   r&   r'   r   r   r   Fr   ri   rj   )r   r)   r   getattrr;   rl   rm   rn   )r   gettertargetr,   ro   r   r   r   test_getitem_raises  s     zTestRaises.test_getitem_raisesr@   r   rC   r   rB   c                 C   sZ   dd |D }d}t jtjj|d" tj|fi | W d    n1 sL0    Y  d S )Nc                 S   s   g | ]}|j d dqS rD   rE   rF   r   r   r   rI   8  rJ   z1TestRaises.test_concat_raises.<locals>.<listcomp>ri   rj   )r;   rl   r   rm   rn   rK   )r   rL   rM   ro   r   r   r   test_concat_raises+  s    zTestRaises.test_concat_raisesc                 C   s   t jdg dig ddjdd}t jdg dig dd}d	}tjt jj|d
" t j||ddd W d    n1 sz0    Y  d S )Nr   )r   r   r   r"   r   Fr   r(   )r   r   r   ri   rj   TrO   )r   r)   r   r;   rl   rm   rn   rP   rs   r   r   r   test_merge_raises=  s    zTestRaises.test_merge_raises)r\   r]   r^   r;   r<   r_   r   r   r/   r)   rp   rr   rt   r6   rb   rf   rx   ry   re   rz   r   r   r   r   rg      sT   	



rg   idxr   r   g?rX   Dr   Z1D)r   r   c                 C   s
   t | jS N)typer\   rH   r   r   r   <lambda>U  rJ   r   )idsc                 C   s   d}t jtjj|d& tjd| djdd W d    n1 sB0    Y  t jtjj|d. tjdddgi| djdd W d    n1 s0    Y  t jtjj|d, tjddgg| d	jdd W d    n1 s0    Y  d S )
Nri   rj   r   r   Fr   r   r   rq   )r;   rl   r   rm   rn   r   r   r)   )r{   ro   r   r   r   test_raises_basicH  s    4<r   c                  C   sR   t g d} |  }t jdddgddggit jddgd	d
d}t|| d S )Nr   r   r   r   r#   	positionsr   r   r   r%   r   r   labelr4   r   )r   Index_format_duplicate_messager)   tmassert_frame_equalr{   r   rS   r   r   r   $test_format_duplicate_labels_messagec  s    "r   c                  C   s^   t jdgg dg} |  }t jdddgddggit jdgdd	ggd
}t|| d S )Nr   r   r   r   r   r   r%   r   r   r   )r   
MultiIndexZfrom_productr   r)   r   r   r   r   r   r   *test_format_duplicate_labels_message_multil  s    r   c                  C   sf   t dddgijdd} d}tjt|d& | jddd	d
gdd W d    n1 sX0    Y  d S )Nr   r   r   Fr   Cannot specifyrj   r   r%   r&   T)Zallow_duplicates)r   r)   r   r;   rl   
ValueErrorinsert)r,   ro   r   r   r   test_dataframe_insert_raisesv  s    r   zmethod, frame_onlyZ	set_indexr   T)ZinplaceZreset_indexr   c                 C   s   | S r}   r   r   r   r   r   r     rJ   Fc                 C   s   t ddgddgdjdd}|d }d|j_d}tjt|d	 | | W d    n1 s`0    Y  |stjt|d	 | | W d    n1 s0    Y  d S )
Nr   r   r   r'   Fr   r   r   rj   )r   r)   r   r
   r	   r;   rl   r   )methodZ
frame_onlyr,   r   ro   r   r   r   test_inplace_raises}  s    	&r   c                  C   s\   t ddgjdd} t| }t| | t dg ijdd} t| }t| | d S )Nr   r   Fr   r   )r   r   r   r   Zround_trip_pickleZassert_series_equalr)   r   )r   r   r   r   r   test_pickle  s    

r   )#__doc__r6   numpyr`   r;   Zpandasr   Zpandas._testingZ_testingr   r<   r=   re   r   rg   r_   r   ZPeriodIndexZPeriodZDatetimeIndex	TimestampZTimedeltaIndexZ	TimedeltaZCategoricalIndexZIntervalIndexZIntervalr   from_tuplesr   r   r   r   r7   r   r   r   r   r   r   <module>   sH    Xa
	

