o
    5c                     @   sR   d dl Zd dlZd dlmZmZmZ d dlmZ	 d dl
mZmZ G dd dZdS )    N)	Timedeltatimedelta_rangeto_timedelta)DaySecondc                   @   sX   e Zd Zdd Zejdg ddd Zdd Zejd	g d
dd Z	dd Z
dS )TestTimedeltasc                 C   s   t tddd}tdddd}t|| t tddd}tdddd}t|| t tdddtd	 t  }td
ddd}t|| t g dddtd	 }td
ddd}t|| t tdddd }tdddd}t|| d S )N   D)unit0 days)periodsfreq   z10 days)r      z1 days, 00:00:02z5 days, 00:00:02)      r      	   2D2   T   30T)r   r   )r   nparanger   tmassert_index_equalr   r   )selfexpectedresult r    j/var/www/html/gps/gps/lib/python3.10/site-packages/pandas/tests/indexes/timedeltas/test_timedelta_range.pytest_timedelta_range   s    z#TestTimedeltas.test_timedelta_rangezperiods, freq))r   r   )r   r	   )   19H12T)r   16H)r   12Hc                 C   s,   t dd|d}t dd|d}t|| d S )Nr   z4 days)startendr   r'   r(   r   )r   r   r   )r   r   r   r   r   r    r    r!   test_linspace_behavior(   s   z%TestTimedeltas.test_linspace_behaviorc                 C   s$  d}t jt|d tdd W d    n1 sw   Y  t jt|d tdd W d    n1 s5w   Y  t jt|d tdd W d    n1 sQw   Y  t jt|d t  W d    n1 skw   Y  t jt|d tddd	d
d W d    d S 1 sw   Y  d S )NzVOf the four parameters: start, end, periods, and freq, exactly three must be specified)matchr   )r'   z5 days)r(   r   r   
   H)r'   r(   r   r   )pytestraises
ValueErrorr   )r   msgr    r    r!   test_errors1   s"   "zTestTimedeltas.test_errorsz"start, end, freq, expected_periods))1D10Dr   r   )r   30D3Dr-   )2s50s5sr-   )4D16Dr7   r   )8Dr<   40siC  c                 C   sJ   t |||d}t||d ksJ t||d ksJ t||ks#J d S )Nr)   r   )r   r   len)r   r'   r(   r   expected_periodsresr    r    r!   $test_timedelta_range_freq_divide_endG   s   z3TestTimedeltas.test_timedelta_range_freq_divide_endc                 C   s    t dddd}|jd u sJ d S )N0s1s   r,   )r   r   )r   r   r    r    r!   test_timedelta_range_infer_freqY   s   z.TestTimedeltas.test_timedelta_range_infer_freqN)__name__
__module____qualname__r"   r/   markparametrizer*   r3   rC   rG   r    r    r    r!   r      s    

r   )numpyr   r/   pandasr   r   r   pandas._testing_testingr   pandas.tseries.offsetsr   r   r   r    r    r    r!   <module>   s    