
    bMh^                     H   d dl Zd dlZd dlmc mZ d dlmZm	Z	m
Z
mZmZmZmZmZ d dlmZ d dlmZ ej        d             Zej        d             Z G d d          Zej                            dd	d
gdd gg          d             Z ej        d          d             ZdS )    N)	DataFrameDatetimeIndexIndex
MultiIndexNaTSeries	Timestamp
date_range)offsetsc                      t          t          ddd          t          d          d                              d          S )N20130101   speriodsfreqABr   )r   r
   range	set_index     j/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/window/test_timeseries_window.pyregularr      s?    QS999aII innr   c                      t          dt          d          i          } t          d          t          d          t          d          t          d          t          d          g| _        | S )Nr   r   20130101 09:00:0020130101 09:00:0220130101 09:00:0320130101 09:00:0520130101 09:00:06)r   r   r	   index)dfs    r   raggedr$      se    	Cq?	#	#B%&&%&&%&&%&&%&&BH Ir   c                      e Zd Zd Zd Zej                            dd ej	        d          g          d             Z
ej                            dd ej        d          dg          d	             Zej                            d
dd ej        g d          g          d             Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d  Z!d! Z"d" Z#d# Z$ej                            d$d%d&d'gd(z  fd%d)d'gd*z  d+gz   fd%d,d'gd*z  d-gz   fd.d&d'gd(z  fd.d)d'gd*z  d+gz   fd.d,d'gd*z  d-gz   fd&d&d'gd(z  fd&d)d'gd*z  d+gz   fd&d,d'gd*z  d-gz   fd/d&d'gd(z  fd/d)d'gd*z  d+gz   fd/d,d'gd*z  d-gz   fd0d&d'gd(z  fd0d)d'gd*z  d+gz   fd0d,d'gd*z  d-gz   fg          d1             Z%ej                            d2g d3          d4             Z&d5 Z'd6 Z(d7 Z)d8 Z*d9 Z+d:S );TestRollingTSc           
      (   t          ddddt          j        dgit          d          t          d          t          d          t          d	          t          d
          g          }| |                    d                                           d S )Nr   r            r   r   r   r    r!   r"   2s)r   npnanr	   rollingsumselfr#   s     r   test_doc_stringzTestRollingTS.test_doc_string-   s    1aBFA&'-..-..-..-..-..	
 	
 	
 	


4r   c                 X   d}t          j        t          |          5  |                    d           d d d            n# 1 swxY w Y   d}t          j        t          |          5  |                                                    d           d d d            d S # 1 swxY w Y   d S )Nz@passed window foobar is not compatible with a datetimelike indexmatchfoobarwindowwindow must be an integer)pytestraises
ValueErrorr/   reset_index)r2   r   msgs      r   test_invalid_window_non_intz)TestRollingTS.test_invalid_window_non_int;   s(   P]:S111 	- 	-OO8O,,,	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- 	- *]:S111 	; 	;!!))):::	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	;s#   AAA))BB#&B#r   2MSr)   c                     d}t          j        t          |          5  |                    |           d d d            d S # 1 swxY w Y   d S )Nz-\<2 \* MonthBegins\> is a non-fixed frequencyr5   r8   r;   r<   r=   r/   )r2   r   r   r?   s       r   test_invalid_window_nonfixedz*TestRollingTS.test_invalid_window_nonfixedE   s     A]:S111 	) 	)OO4O(((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	)s   AA	A1D2msc                 2    |                     |           d S )Nr8   )r/   )r2   r   r   s      r   test_valid_windowzTestRollingTS.test_valid_windowL   s    t$$$$$r   minp      ?foo)r(   r)      c                     d}t          j        t          |          5  |                    d|           d d d            d S # 1 swxY w Y   d S )NzQlocal variable 'minp' referenced before assignment|min_periods must be an integerr5   rE   r9   min_periodsrC   )r2   rI   r   r?   s       r   test_invalid_minpzTestRollingTS.test_invalid_minpP   s    - 	 ]:S111 	; 	;OO4TO:::	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	; 	;s   AA
Ac                 R   |}d}t          j        t          |          5  |                    dd           d d d            n# 1 swxY w Y   |                                }t          dt          |                    |d<   |                    d	d                                           d
}t          j        t          |          5  |                    d	d           d d d            n# 1 swxY w Y   |                    d	d          j                                         d S )NzSinvalid on specified as foobar, must be a column \(of DataFrame\), an Index or Noner5   r,   r7   )r9   onr   r   C2dr:   r   )	r;   r<   r=   r/   copyr
   lenr0   r   )r2   r   r#   r?   s       r   test_onzTestRollingTS.test_onZ   s   3 	 ]:S111 	1 	1JJdxJ000	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 WWYYZR9993


$3
''++--- *]:S111 	, 	,JJdsJ+++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	

$3
'')--/////s#   AAA
C..C25C2c                 f   t          t          ddd          t          d          d          }|j        j        sJ |                    dd                                           |                    d          }|j        j        sJ |                    d                                           d S )	Nr   r   r   r   r   r,   r   rR   )	r   r
   r   r   is_monotonic_increasingr/   r0   r   r"   r1   s     r   test_monotonic_onzTestRollingTS.test_monotonic_onr   s    Z===E!HHMM
 
 t++++


4C
  $$&&&\\#x////


4r   c                    t          t          ddd          t          d          d          }|                    d          }|j                                        }|d         |d<   ||_        |j        j        rJ d	}t          j        t          |
          5  |
                    d                                           d d d            n# 1 swxY w Y   |                                }d}t          j        t          |
          5  |
                    dd                                           d d d            d S # 1 swxY w Y   d S )Nr   r   r   r   r   r   rL   r   zindex values must be monotonicr5   r,   zNinvalid on specified as A, must be a column \(of DataFrame\), an Index or NonerZ   )r   r
   r   r   r"   to_listr[   r;   r<   r=   r/   r0   r>   )r2   r#   non_monotonic_indexr?   s       r   test_non_monotonic_onz#TestRollingTS.test_non_monotonic_on   s   Z===E!HHMM
 
 \\# h..00!4Q!7A&83333.]:S111 	# 	#JJt  """	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# ^^3 	 ]:S111 	+ 	+JJtJ$$((***	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+s$   (CCC*EE	Ec                 f   t          t          d          t          ddd          d          }t          d          t          d          t          d          t          d          t          d	          g|d
<   |                    d
                              d          j                                                            d          }|                    dd
          j                                        }t          j
        ||           |                    d
                              d          dg                                                                         dd
g         }|                    dd
          dg                                         }t          j        ||           d S )Nr   r   3sr   )r   rT   r   r   r    r!   r   r,   T)droprZ   r   )r   r   r
   r	   r   r/   r   r0   r>   tmassert_series_equalassert_frame_equal)r2   r#   expectedresults       r   test_frame_onzTestRollingTS.test_frame_on   s   ((,?QU!V!V!VWW
 

 )**)**)**)**)**
3 <<$$,,T22488::FFDFQQDS))+//11
vx000 LL%%d++SE26688DDFFSzR 	 DS))3%04466
fh/////r   c           	      h   t          t          d          t          d          t          d          t          d          t          d          g                              |          }t          g dddd	t          j        d
g|dg d          }t          g ddddt          j        d
g|d         dg d          }|                    dd                                          }|}t          j	        ||           t          dddt          j        d
gd          }|                    dd          j                                        }t          j        ||           |g d         }|                    dd          g d                                         }t          j	        ||           d S )Nr   r   r   r    r!   )r   r(   r)   rL   r*   r   r(   r)   r*   )r   r   rT   )r   rT   r   )columns        r(   rL   rL      rL   rT   r,   rZ   r   )name)r   r	   as_unitr   r-   r.   r/   r0   rd   rf   r   r   re   )r2   unitdtir#   	expected1rh   rg   s          r   test_frame_on2zTestRollingTS.test_frame_on2   s   -..-..-..-..-..
 
 '$-- 	 $__Arvq) 
 $OO
 
 
 ###1aBFA*>RWMM#OO
 
 
	
 DS))--//
fh///1aBFA.S999DS))+//11
vx000___-DS))///:>>@@
fh/////r   c                    |                                 }t          ddd          |_        |                    dd                                          }|                    d                                          }t          j        ||           t          ddd	          |_        |                    dd                                          }|                    d	d                                          }t          j        ||           |                    dd                                          }|                    d	d                                          }t          j        ||           |                    d                                          }|                    d	                                          }t          j        ||           d S )
Nr   r   Dr   r(   rN   rE   r8   2D)rV   r
   r"   r/   r0   rd   rf   r2   r   r#   rg   rh   s        r   test_basic_regularz TestRollingTS.test_basic_regular   s   \\^^j!#>>>::QA:66::<<4((,,..
fh///j!$???::QA:66::<<4Q77;;==
fh///::QA:66::<<4Q77;;==
fh///::Q:''++--4((,,..
fh/////r   c                    |}|                     dd                                          }|                     d                                          }t          j        ||           |                     dd                                          }|                     dd                                          }t          j        ||           d S )Nr)   r(   rO   r,   )r/   r0   rd   rf   rx   s        r   test_min_periodszTestRollingTS.test_min_periods   s     ::aQ://3355D!!%%''
fh///::aQ://3355Da004466
fh/////r   c           	      $   t          t          d          t          d          t          d          t          d          t          d          g                              |          }t          ddgdz  i|	          }d
}t	          j        t          |          5  |                    dd           d d d            n# 1 swxY w Y   |                                }g d|d<   |                    dd          	                                }t          j        ||           |                    d          	                                }t          j        ||           |                                }g d|d<   |                    dd          	                                }t          j        ||           |                                }t          j        ddddg|d<   |                    dd          	                                }t          j        ||           |                                }t          j        dddt          j        g|d<   |                    dd          	                                }t          j        ||           d S )Nz20130101 09:00:01r   r   z20130101 09:00:04r!   r   r(   r   r+   z3closed must be 'right', 'left', 'both' or 'neither'r5   r,   blabla)r9   closed)rJ   r)   r)   r)   r(   right)r   )rJ   r)   rL   rL   r)   bothrJ   r)   leftneither)r   r	   rp   r   r;   r<   r=   r/   rV   r0   rd   rf   r-   r.   )r2   r   rq   rr   r#   r?   rg   rh   s           r   test_closedzTestRollingTS.test_closed   s    -..-..-..-..-..
 
 '$-- 	 1#'N
 
 
 D]:S111 	: 	:OO4O999	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 	: 7799)))D115577
fh/// D!!%%''
fh///7799)))D004466
fh///7799aA.D004466
fh///7799aBF3D337799
fh/////s   CCCc                    |}|                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd                                          }|                                }t
          j        t
          j        d	t
          j        d
g|d<   t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           |                     d                                          }|                                }g d|d<   t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd	                                          }|                                }t
          j        t
          j        d	ddg|d<   t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           d S )N1sr(   rN   rm   r(   r)   rL   r*   r   r,   rl   r)   rL   rn   rb   )rm   r(   rL   r   rn   r8   4s)rm   r(   rL      	   r   r   5s)rm   r(   rL   r   
   )r/   r0   rV   rd   rf   r-   r.   r2   r$   r#   rh   rg   s        r   test_ragged_sumzTestRollingTS.test_ragged_sum.  s   4Q77;;==7799)))
fh///4Q77;;==7799)))
fh///4Q77;;==7799BFA6
fh///4Q77;;==7799)))
fh///4((,,..7799)))
fh///4Q77;;==7799)))
fh///4Q77;;==7799Aq1
fh///4Q77;;==7799***
fh/////r   c                 n   |}|                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           d S Nr   r(   rN   r   r   r,   rm   r(   g      ?      @g      @)r/   meanrV   rd   rf   r   s        r   test_ragged_meanzTestRollingTS.test_ragged_meanX  s    4Q77<<>>7799)))
fh///4Q77<<>>7799///
fh/////r   c                 n   |}|                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           d S r   )r/   medianrV   rd   rf   r   s        r   test_ragged_medianz TestRollingTS.test_ragged_mediand  s    4Q77>>@@7799)))
fh///4Q77>>@@7799///
fh/////r   c                 r   |}|                     dd                              d          }|                                }g d|d<   t          j        ||           |                     dd                              d          }|                                }g d|d<   t          j        ||           d S )	Nr   r(   rN         ?r   r   r,   r   )r/   quantilerV   rd   rf   r   s        r   test_ragged_quantilez"TestRollingTS.test_ragged_quantilep  s    4Q77@@EE7799)))
fh///4Q77@@EE7799///
fh/////r   c                 $   |}|                     dd                              d          }|                                }dgdz  |d<   t          j        ||           |                     dd                              d          }|                                }t
          j        gdz  |d<   t          j        ||           |                     d	d                              d          }|                                }dgd
gdz  z   |d<   t          j        ||           |                     dd                              d          }|                                }t
          j        ddddg|d<   t          j        ||           d S )Nr   r(   rN   r   ddofrm   r   r   rb   r   r*   r   g۞?rJ   gPS?)r/   stdrV   rd   rf   r-   r.   r   s        r   test_ragged_stdzTestRollingTS.test_ragged_std|  sq   4Q77;;;CC7799	
fh///4Q77;;;CC77991
fh///4Q77;;;CC7799	)
fh///4Q77;;;CC77993X>
fh/////r   c                 $   |}|                     dd                              d          }|                                }dgdz  |d<   t          j        ||           |                     dd                              d          }|                                }t
          j        gdz  |d<   t          j        ||           |                     d	d                              d          }|                                }dgd
gdz  z   |d<   t          j        ||           |                     dd                              d          }|                                }t
          j        ddddg|d<   t          j        ||           d S )Nr   r(   rN   r   r   rm   r   r   rb   g      ?r*   r   r   rJ   g?)r/   varrV   rd   rf   r-   r.   r   s        r   test_ragged_varzTestRollingTS.test_ragged_var  sq   4Q77;;;CC7799	
fh///4Q77;;;CC77991
fh///4Q77;;;CC7799
*
fh///4Q77;;;CC7799c3<
fh/////r   c                    |}|                     dd                                          }|                                }t          j        gdz  |d<   t          j        ||           |                     dd                                          }|                                }t          j        gdz  g dz   |d<   t          j        ||           d S )	Nrb   r(   rN   r   r   r   r)   )rm   rm   rm   )r/   skewrV   r-   r.   rd   rf   r   s        r   test_ragged_skewzTestRollingTS.test_ragged_skew  s    4Q77<<>>77991
fh///4Q77<<>>779916
fh/////r   c                    |}|                     dd                                          }|                                }t          j        gdz  |d<   t          j        ||           |                     dd                                          }|                                }t          j        gdz  dgz   |d<   t          j        ||           d S )	Nrb   r(   rN   r   r   r   r*   g333333)r/   kurtrV   r-   r.   rd   rf   r   s        r   test_ragged_kurtzTestRollingTS.test_ragged_kurt  s    4Q77<<>>77991
fh///4Q77<<>>77991v-
fh/////r   c                    |}|                     dd                                          }|                                }g d|d<   t          j        ||           |}|                     d                                          }t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd	                                          }|                                }t
          j        t
          j        d	t
          j        d	g|d<   t          j        ||           d S )
Nr   r(   rN   )rJ   r(   r(   r(   r(   r   r8   r,   )rJ   r(   r)   r(   r)   r)   )r/   countrV   rd   rf   r-   r.   r   s        r   test_ragged_countzTestRollingTS.test_ragged_count  s?   4Q77==??7799)))
fh///4((..00
fh///4Q77==??7799)))
fh///4Q77==??7799BFA6
fh/////r   c                    t          t          ddd          g dd                              d          }|                    d                                          }|                                }g d|d	<   t          j        ||           t          t          ddd          g d
d                              d          }t          j        ||           |                    d                                          }|                                }g d|d	<   t          j        ||           |                    d                                          }|                                }g d|d	<   t          j        ||           d S )Nr   r   r   r   r   r   r   r   r   )r   r*   rL   r*   r   r,   )      @r*   rL   rL   r*   r   )r   r*   rL   rL   rL   )r   r
   r   r/   minrV   rd   rf   r2   r#   rh   rg   s       r   test_regular_minzTestRollingTS.test_regular_min  s|   Z===DUDUDUVV
 

)C.. 	 D!!%%''7799)))
fh///Z===OOOTT
 

)C.. 	 	fh///D!!%%''7799)))
fh///D!!%%''7799)))
fh/////r   c                     |}|                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd                                          }|                                }g d	|d<   t          j        ||           d S )
Nr   r(   rN   r   r   r,   )rm   r(   r(   rL   rL   r   )rm   r   r   r(   r(   )r/   r   rV   rd   rf   r   s        r   test_ragged_minzTestRollingTS.test_ragged_min      4Q77;;==7799)))
fh///4Q77;;==7799)))
fh///4Q77;;==7799)))
fh/////r   c                    d}t          dt          j                            d                              |          it          d|d                    }|                    dd	                                          }|                    d
                                          }||z
  dk                                                                     sJ |                    dd	                                          }|                    d                                          }||z
  dk                                                                     sJ d S )Ni'  r   r)   r   r   r   r+   r(   r{   r,   g{Gz?   200s)	r   r-   randomdefault_rngstandard_normalr
   r/   r   all)r2   Ndfprg   rh   s        r   test_perf_minzTestRollingTS.test_perf_min  s3   ")''**::1==>Z===
 
 
 ;;qa;004466T""&&((("d*//115577777;;s;226688V$$((**("d*//11557777777r   c                     |}|                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           |                     dd                                          }|                                }g d|d<   t          j        ||           d S )Nr   r(   rN   r   r   r,   r   )r/   maxrV   rd   rf   r   s        r   test_ragged_maxzTestRollingTS.test_ragged_max  r   r   zfreq, op, result_datamsr   rm   r   r   r   gqq?r   g       @r   hrv   c                 :   t          dd| d          }t          d|d          }t          j        |j        d<   d	|j        d
<    t          |                    d|           |                      }t          ||          }t          j        ||           d S )Nz2018-1-1 01:00:001r   )startr   r   r   float)datar"   dtyper(   r)   10r8   )r   r"   )	r
   r   r-   r.   ilocgetattrr/   rd   re   )r2   r   opresult_datar"   r   rh   rg   s           r   test_freqs_opszTestRollingTS.test_freqs_ops   s    , !4:t::rRRRg666Fq	r
;+t++66;;=={%888
vx00000r   f)
r0   r   r   r   r   r   r   r   r   r   c                 p   |dz  }|                     d          }|                     d          } t          ||                      } t          ||                      }t          j        ||           |                    d          }|                    d          }t          j        ||           d S )Nr)   r(   r8   r   r   )r/   r   rd   rf   r   )r2   r   r   r#   errrh   rg   s           r   test_allzTestRollingTS.test_all@  s    " q[ZZqZ!!JJdJ##A!72q>>##
fh///C;;s##
fh/////r   c                    |t          dt          j        d          it          ddd                    }|                    dd          }|                    d	
          } t          |                      }fd}|                    |j        j	                  
                    |                              dd          }t          j        ||           d S )Nr   2   r   r   r   r+   09:0016:005hr8   c                     |                      dd          }  t          |                     dd                                S )Nr   r   r   r(   r{   )between_timer   r/   )xr   s    r   
agg_by_dayz+TestRollingTS.test_all2.<locals>.agg_by_dayo  s>    w00A:7199QA966::<<<r   r   T)levelrc   )r   r-   aranger
   r   r/   r   groupbyr"   dayapplyr>   rd   rf   )	r2   arithmetic_win_operatorsr#   dftr   rh   r   rg   r   s	           @r   	test_all2zTestRollingTS.test_all2]  s    $ ")B-- 
:rPS(T(T(T
 
 
 oogw//KKtK$$A	= 	= 	= 	= 	=
 JJrx|$$**:66BBQUBVV 	 	fh/////r   c                 @   t          ddd          }t          t          j        t	          |                    |          }|                    d                                          }t          t          j        gdgt	          |          dz
  z  z   |          }t          j	        ||           |                    d	d
                                          }t          j	        ||           |                    d                                          }t          t          j        dgdgt	          |          d	z
  z  z   |          }t          j	        ||           |                    dd
                                          }t          j	        ||           d S )Nz
2017-01-01   1hr   r+   2hr   r(   r)   r{   3hrJ   rL   )
r
   r   r-   r   rW   r/   covr.   rd   re   )r2   idxssrh   rg   	expected2s         r   test_rolling_cov_offsetz%TestRollingTS.test_rolling_cov_offsety  sb    r===BIc#hh''s333D!!%%''26(cUc#hhl%;;3GGG
vx000JJqaJ004466	
vy111D!!%%''263-3%3s88a<*@@LLL
vx000JJqaJ004466	
vy11111r   c           	         t          t          d          t          d          t          d          t          d          t          d          g                              |          }t          dg di|          }|                    d	                                          }t          dg d
i|          }t          j        ||           d S )Nz20190101 09:00:30z20190101 09:00:27z20190101 09:00:20z20190101 09:00:18z20190101 09:00:10column)rL   r*   r*   r   r   r+   r   )r   r         @r         @)r   r	   rp   r   r/   r   rd   rf   )r2   rq   r"   r#   rh   rg   s         r    test_rolling_on_decreasing_indexz.TestRollingTS.test_rolling_on_decreasing_index  s    -..-..-..-..-..
 
 '$-- 	 ///2%@@@D!!%%''h(A(A(AB%PPP
fh/////r   c                     t          dg ig           }|                    d                                          }t          dg ig           }t          j        ||           d S )Nr   r+   r   )r   r/   r   rd   rf   r   s       r   test_rolling_on_emptyz#TestRollingTS.test_rolling_on_empty  sd    "~R000D!!%%''h^2666
fh/////r   c           	         t          dt          d          it          j        t	          dd          t          d          gddg	          
          }|                    d|j                            d                                                    }t          dg di|j        
          }t          j
        ||           d S )Nr   r   20190101rL   rS   r)   dateseq)namesr+   10drZ   )rm   rJ   r   r   g      $@g      .@)r   r   r   from_productr
   r/   r"   get_level_valuesr0   rd   rf   r   s       r   !test_rolling_on_multi_index_levelz/TestRollingTS.test_rolling_on_multi_index_level  s    uQxx )J222E!HH=fe_  
 
 
 Ebh&?&?&G&GHHLLNN7778
 
 
 	fh/////r   N),__name__
__module____qualname__r3   r@   r;   markparametrizer   
MonthBeginrD   DayrH   r-   arrayrP   rX   r\   r`   ri   rt   ry   r|   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r&   r&   )   s4         ; ; ; [Ve-?W-?-B-B%CDD) ) ED) [VdKGKNNE%BCC% % DC% [Vc5("(9992E2E%FGG; ; HG;0 0 00  + + +20 0 0@#0 #0 #0J0 0 0*0 0 0-0 -0 -0^(0 (0 (0T
0 
0 
0
0 
0 
0
0 
0 
00 0 0,0 0 0,
0 
0 
0
0 
0 
00 0 0*0 0 000 0 0$8 8 80 0 0$ [53%"*%6C519y0153%!)se+,%#$&3%!)wi/0%#cU*+EC52:&FSEAI	12EC519u,-%#$&3%!)wi/0%#cU*+%#$&3%!)wi/0%#cU*+	
 (
1 
1) (
1 [	
 	
 	
 0 0 00 0 082 2 2(0 0 0"0 0 00 0 0 0 0r   r&   z	msg, axisr   r(   r"   c                    t          d          t          g}|dk    rdnd|i}t          t          j        d          fi |}d}|dk    rd}t          j        t          |  d	          5  t          j	        t          |	          5  |                    d
|                                           d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )N2020r(   rk   r"   r)   z5The 'axis' keyword in DataFrame.rolling is deprecatedz5Support for axis=1 in DataFrame.rolling is deprecatedz values must not have NaTr5   rv   )axis)r	   r   r   r-   eyer;   r<   r=   rd   assert_produces_warningFutureWarningr/   r   )r?   r  r   kwargsr#   warn_msgs         r   test_nat_axis_errorr    si   Vc
"C199ii'37F	26!99	'	'	'	'BFHqyyJ	zC)J)J)J	K	K	K . .'XFFF 	. 	.JJsJ&&++---	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	.. . . . . . . . . . . . . . . . . .s6   *C*B<0C<C 	 CC 	CCCpyarrowc            	         t          t          j        dt          j                  t	          t          dd          d                    } |                     d                                          }t          j	        ||            d S )Nr   )r   z
2020-01-01rS   ztimestamp[ns][pyarrow]r+   rE   )
r   r-   r   float64r   r
   r/   r0   rd   re   )rg   rh   s     r   test_arrow_datetime_axisr    s     
	!2:&&&|Q///7O
 
 
  H d##''))F68,,,,,r   )numpyr-   r;   pandas.util._test_decoratorsutil_test_decoratorstdpandasr   r   r   r   r   r   r	   r
   pandas._testing_testingrd   pandas.tseriesr   fixturer   r$   r&   r  r  r  
skip_if_nor  r   r   r   <module>r!     s        ) ) ) ) ) ) ) ) )	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	       " " " " " "    	 	 	H
0 H
0 H
0 H
0 H
0 H
0 H
0 H
0V !}wl&CDD	. 	. ED	. y	- 	- 	- 	- 	-r   