o
    i&                     @   s   d dl Zd dlZd dlZd dlmZmZ d dlmZ	 ej
dddgdd Zej
dd	d
gdd Zdd Zej
dd	d
gdd Zdd Zdd Zdd Zej
dejejgej
ddd	ide igdd Zdd Zd d! Zd"d# ZdS )$    N)
MultiIndexSerieszoperation, expected)mina)maxbc                 C   s,   t ddgdd}t||  }||ksJ d S )Nr   r   stringdtype)r   getattr)	operationexpectedserres_operation_serie r   ^/var/www/edux/Edux_v2/venv/lib/python3.10/site-packages/pandas/tests/series/test_reductions.pytest_reductions_series_strings   s   r   	as_periodTFc                 C   s^   t dd tddD }| r|jd}n|jd}| }|j|jks'J t|| d S )Nc                 S   s   g | ]	}t d d|qS )i     )pd	Timestamp).0nr   r   r   
<listcomp>   s    z-test_mode_extension_dtype.<locals>.<listcomp>      Dz
US/Central)	r   rangedt	to_periodtz_localizemoder
   tmassert_series_equal)r   r   resr   r   r   test_mode_extension_dtype   s   r%   c                  C   sN   t dtjgdd} | d }|  |ksJ |  |ksJ |  |ks%J d S )Nr   zm8[ns]r	   )r   r   NaTmedianr   r   )r   expr   r   r   test_reductions_td64_with_nat#   s
   r)   skipnac                 C   s>   t g dd}|j| d}t|tjsJ |tdksJ d S )Nztimedelta64[ns]r	   )r*   r   )r   sum
isinstancer   	Timedelta)r*   r   resultr   r   r   test_td64_sum_empty,   s   r/   c                  C   s(  t tjdddd} | d  td7  < | |    }tt| |   jt|  	 }t
|jd |jd s>J d}tjt|d	 | |   	  W d    n1 sZw   Y  | dd
 }tjt|d	 ||  	  W d    n1 sw   Y  | dd }||  	  d S )N20130101i H)periodsfreqr   z1s 1msi  zoverflow in timedelta operationmatchi'  )r   r   
date_ranger-   r   meanTimedeltaIndexasi8lenr+   npallclosevaluepytestraises
ValueError)r   r.   r   msgs1s2r   r   r   test_td64_summation_overflow6   s   &rD   c                  C   s.   t g dtdd} |  }t|t rJ d S )N)      ?rE   rE      index)r   r   prodr,   )r   r.   r   r   r   test_prod_numpy16_bugO   s   rJ   c                  C   sl   t dgtdgd} tt | jdd}W d    n1 s!w   Y  t dgdgd}t|| d S )Ng      $@)   rF   rG   r   )levelrK   )r   r   from_tuplesr"   assert_produces_warningFutureWarningr+   r#   )objr.   r   r   r   r   test_sum_with_levelV   s   rQ   funckwargskeepdimsoutc                 C   st   t ddg}t| d }|j}d| d| d}tjt|d ||fi |  W d    d S 1 s3w   Y  d S )Nr   rK   r   zthe 'z=' parameter is not supported in the pandas implementation of z\(\)r4   )r   list__name__r>   r?   r@   )rS   rR   r   paramnamerA   r   r   r   )test_validate_any_all_out_keepdims_raises_   s   "rZ   c                  C   R   t ddg} d}tjt|d tj| dd W d    d S 1 s"w   Y  d S )Nr   rK   zPthe 'initial' parameter is not supported in the pandas implementation of sum\(\)r4   
   )initialr   r>   r?   r@   r;   r+   r   rA   r   r   r   test_validate_sum_initialo      "r`   c                  C   sP   t ddg} d}tjt|d | jdd W d    d S 1 s!w   Y  d S )Nr   rK   z[the 'overwrite_input' parameter is not supported in the pandas implementation of median\(\)r4   T)overwrite_input)r   r>   r?   r@   r'   r_   r   r   r   test_validate_median_initialz   s   "rc   c                  C   r[   )Nr   rK   zQthe 'keepdims' parameter is not supported in the pandas implementation of sum\(\)r4   T)rT   r^   r_   r   r   r   test_validate_stat_keepdims   ra   rd   )numpyr;   r>   pandasr   r   r   pandas._testing_testingr"   markparametrizer   r%   r)   r/   rD   rJ   rQ   anyallobjectrZ   r`   rc   rd   r   r   r   r   <module>   s*    

	
		