a
    Gb                     @   sX   d dl Zd dlZd dlmZmZ d dlmZ G dd dZ	ej
dg ddd ZdS )	    N)Series
date_rangec                   @   s>   e Zd Zdd Zdd Zdd Zejdg dd	d
 Z	dS )TestSeriesPctChangec                 C   s   |j d d}t|||d d  | d}|jdd}t|||d d  |j ddd}|jddd}t|||d d  |j d	d
}|jdd}t|||jd	d
 d | d S )Nfill_method      pad)methodbfillr   limit)r
   r   Z5Dfreq)
pct_changetmassert_series_equalshiftZfillnaZreindex_like)selfdatetime_seriesZrsZfilled r   Jlib/python3.9/site-packages/pandas/tests/series/methods/test_pct_change.pytest_pct_change   s    
z#TestSeriesPctChange.test_pct_changec                 C   sP   t dddd}ttd|jdd}ttjtjtjtjdg|}t|| d S )Nz
2019-11-14   D)periodsr   Br         @)	r   r   ranger   npZNaNinfr   r   )r   Z
common_idxresultexpectedr   r   r   #test_pct_change_with_duplicate_axis   s    z7TestSeriesPctChange.test_pct_change_with_duplicate_axisc                 C   s@   t ddtjddg}| }t tjddddg}t|| d S )	N      ?g      ?g      @r         ?g        gVUUUUU?g?r   r   nanr   r   r   )r   sZchgr"   r   r   r   test_pct_change_shift_over_nas(   s    z2TestSeriesPctChange.test_pct_change_shift_over_nasz!freq, periods, fill_method, limit))Z5Br   NN)3B   NN)r*   r+   r   N)7B   r	   r   )r,   r-   r   r+   )Z14B   NNc           	      C   sj   |j |||d}|j |||d}t|| t|jtd}|j |||d}|j |||d}t|| d S )N)r   r   r   r   )indexZdtype)r   r   r   r   r/   object)	r   r   r   r   r   r   Zrs_freqZ
rs_periodsZempty_tsr   r   r   test_pct_change_periods_freq/   s    z0TestSeriesPctChange.test_pct_change_periods_freqN)
__name__
__module____qualname__r   r#   r)   pytestmarkparametrizer1   r   r   r   r   r      s   
r   r   )r	   ZffillNc                 C   sb   t tjdddddgddgd d}|j| d	}t tjtjd
ddd
gddgd d}t|| d S )Nr   r   r+   	      ab)r/   r   r$   r%   g       @r&   )r   r(   r!   r"   r   r   r   'test_pct_change_with_duplicated_indicesL   s    "$r<   )Znumpyr   r5   Zpandasr   r   Zpandas._testingZ_testingr   r   r6   r7   r<   r   r   r   r   <module>   s   A