
    Eg5                     L    d dl Zd dlZd dlmZmZ d dlmZ  G d d          Z	dS )    N)PeriodIndexperiod_rangec                   2    e Zd Zd Zd Zd Zd Zd Zd ZdS )TestPeriodIndexShiftc                 v   t          g ddd          }|                    t          j        g d                    }t          g ddd          }t	          j        ||           |                    t          j        g d                    }t          g ddd          }t	          j        ||           d S )	Nz2011-012011-02NaT2011-04Midxfreqname)            )r	   r   r
   z2011-08)r   r   )r	   2010-12r
   r   )r   shiftnparraytmassert_index_equalselfr   resultexpecteds       c/var/www/sysmax/venv/lib/python3.11/site-packages/pandas/tests/indexes/period/methods/test_shift.pytest_pi_shift_ndarrayz*TestPeriodIndexShift.test_pi_shift_ndarray   s    4443U
 
 
 28LLL11224443U
 
 
 	fh///28NNN33444443U
 
 
 	fh/////    c                 ~   t          ddd          }t          ddd          }t          j        |                    d          |           t	          |          t	          |          k    sJ t          j        |                    d          |           t          ddd          }t          dd	d
          }t	          |          t	          |          k    sJ t          j        |                    d          |           t          ddd          }t          ddd          }t	          |          t	          |          k    sJ t          j        |                    d          |           t          ddd          }t          ddd          }t	          |          t	          |          k    sJ t          j        |                    d          |           t          ddd          }t          ddd          }t	          |          t	          |          k    sJ t          j        |                    d          |           t          ddd          }t          ddd          }t	          |          t	          |          k    sJ t          j        |                    d          |           d S )NY1/1/2001	12/1/2009r   startendz1/1/2002z	12/1/2010r   r   z1/1/2000z	12/1/2008r   z2/1/2001z1/1/2010z	12/1/2000z	11/1/2009Dz1/2/2001z	12/2/2009z
12/31/2000z
11/30/2009)r   r   r   r   len)r   pi1pi2s      r!   
test_shiftzTestPeriodIndexShift.test_shift   sq   :;GGG:;GGG
ciillC0003xx3s88####
ciillC000:;GGG:;GGG3xx3s88####
ciimmS111:;GGG::FFF3xx3s88####
ciillC000:;GGG;KHHH3xx3s88####
ciimmS111:;GGG:;GGG3xx3s88####
ciillC000:;GGG<\JJJ3xx3s88####
ciimmS11111r#   c                    t          g dd          }d}t          j        t          |          5  |                    dd           d d d            n# 1 swxY w Y   t          j        |                    d          |           t          j        |                    d	          |           t          g d
dd          }t          j        |                    d          |           t          g ddd          }t          j        |                    d	          |           t          g ddd          }t          j        |                    d          |           d S )Nxxxh)r   r   z6`freq` argument is not supported for PeriodIndex.shift)matchr   r   r   r   )z2011-01-01 10:00z2011-01-01 11:00z2011-01-01 12:00)z2011-01-01 13:00z2011-01-01 14:00z2011-01-01 15:00)z2011-01-01 07:00z2011-01-01 08:00z2011-01-01 09:00)r   pytestraises	TypeErrorr   r   r   )r   r   msgexps       r!   test_shift_corner_casesz,TestPeriodIndexShift.test_shift_corner_casesA   s   "5s333F]9C000 	# 	#IIacI"""	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	ciillC000
ciillC000HHH
 
 

 	ciillC000HHH
 
 

 	ciillC000HHH
 
 

 	ciimmS11111s   AAAc                     t          g ddd          }|                    d          }t          g ddd          }t          j        ||           |j        |j        k    sJ d S )Nr   r   r   r   r   )r	   z2011-03r
   z2011-05)r   r   r   r   r   r   s       r!   test_shift_natz#TestPeriodIndexShift.test_shift_nat`   s    4443U
 
 
 14443U
 
 
 	fh///{hm++++++r#   c                     t          ddd          }|                    d          }t          g dd          }t          j        ||           d S )N20130101   r,   )periodsr   r   )z
2013-01-02z
2013-01-03z
2013-01-04z
2013-01-05z
2013-01-06r5   )r   r   r   r   r   )r   dranger   r    s       r!   test_shift_gh8083z&TestPeriodIndexShift.test_shift_gh8083k   sb     j!#>>>aRRR
 
 
 	fh/////r#   c                     t          ddd          }t          j        |                    d          |           t          j        |                    d          |           d S )Nr%   r&   r'   r(   r   )rB   )r   r   r   r   )r   r   s     r!   test_shift_periodsz'TestPeriodIndexShift.test_shift_periodsv   sZ    :;GGG
ciii22C888
ciillC00000r#   N)	__name__
__module____qualname__r"   r0   r<   r>   rD   rF    r#   r!   r   r      so        0 0 0  2  2  2D2 2 2>	, 	, 	,	0 	0 	01 1 1 1 1r#   r   )
numpyr   r7   pandasr   r   pandas._testing_testingr   r   rJ   r#   r!   <module>rO      s                     o1 o1 o1 o1 o1 o1 o1 o1 o1 o1r#   