o
    i                     @   s  d dl Z d dlmZmZ d dlmZ e jdddgddgdgd dgdgfddgddgdgddgdgfg d	g d
dgd ddgddgfg d	g d
dd ddgddgfg d	g d
dgd dgdgfg d	g d
dd dgdgfgdd Z	e jde
deddd edfe
deddd edfe
dedddedfgdd Zdd Ze jdg dg dge jdg dgdggdd Ze jddg ddd gfdg d!dd gfddgd dgd"d#gfgd$d% Zd&d' Zd(d) ZdS )*    N)IndexSeriesz=data, index, drop_labels, axis, expected_data, expected_index      onetworows)r   r   r   )r   r   r   c           	      C   s6   t | |d}|j||d}t ||d}t|| d S )N)dataindexaxis)r   droptmassert_series_equal)	r	   r
   r   drop_labelsexpected_dataexpected_indexserresultexpected r   `/var/www/edux/Edux_v2/venv/lib/python3.10/site-packages/pandas/tests/series/methods/test_drop.py%test_drop_unique_and_non_unique_index
   s   r   z6data, index, drop_labels, axis, error_type, error_desc   abcbcnot found in axis)acolumnszNo axis named columnsc                 C   sN   t | |d}tj||d |j||d W d    d S 1 s w   Y  d S )Nr
   matchr   )r   pytestraisesr   )r	   r
   r   r   
error_type
error_descr   r   r   r   test_drop_exception_raised!   s   "r&   c                  C   s   t tdtdd} | jddd}t||  | jddgdd}| jd	d  }t|| t d
dgddgd} | j r>J | jj	t
ksFJ | d}t dgdgd}t|| d S )Nr   r   r   r   ignore)errorsr   dr   r   TF)r   rangelistr   r   r   ilocr
   	is_objectdtypebool)r   r   r   r   r   r   test_drop_with_ignore_errors1   s   
r0   r
   r   r   r   )r   r   r   r   c                    s@    fdd| D }t | td }t |td}t|| d S )Nc                    s   g | ]}| vr|qS r   r   ).0ir   r   r   
<listcomp>G   s    z(test_drop_empty_list.<locals>.<listcomp>)r
   r.   )r   objectr   r   r   )r
   r   r   seriesr   r   r4   r   test_drop_empty_listC   s   r8   zdata, index, drop_labels   r   r   r   FTc                 C   s\   | d u rt nd }t| ||d}tjtdd || W d    d S 1 s'w   Y  d S )N)r	   r
   r.   r   r    )r6   r   r"   r#   KeyErrorr   )r	   r
   r   r.   r   r   r   r   test_drop_non_empty_listM   s
   
"r<   c                  C   sn   t g d} d}tjt|d | dd}W d    n1 s w   Y  t ddgddgd}t|| d S )	Nr1   zqIn a future version of pandas all arguments of Series\.drop except for the argument 'labels' will be keyword-onlyr    r   r   r   r   r   )r   r   assert_produces_warningFutureWarningr   r   )r   msgr   r   r   r   r   test_drop_pos_args_deprecation]   s   r@   c                 C   sX   t dtg d| dd}t|jd g}||}t dtdg| dd}t|| d S )Nd   r:   )r.   r   r   )r   r   r
   r   r   r   )any_numeric_ea_dtypedfidxr   r   r   r   r   test_drop_index_ea_dtypej   s
   
rE   )r"   pandasr   r   pandas._testing_testingr   markparametrizer   r*   r+   r;   
ValueErrorr&   r0   r8   r<   r@   rE   r   r   r   r   <module>   sH     




