
    Owg^                     B   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j2                  j5                  dd	d
gdd gg      d        Z ej8                  d      d        Zy)    N)	DataFrameDatetimeIndexIndex
MultiIndexNaTSeries	Timestamp
date_range)offsetsc                  f    t        t        ddd      t        d      d      j                  d      S )N20130101   speriodsfreqABr   )r   r
   range	set_index     a/var/www/horilla/myenv/lib/python3.12/site-packages/pandas/tests/window/test_timeseries_window.pyregularr      s-    QS9aIin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$      sQ    	Cq?	#B%&%&%&%&%&BH Ir   c                      e Zd Zd Zd Zej                  j                  dd ej                  d      g      d        Z
ej                  j                  dd ej                  d      dg      d	        Zej                  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                  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                  j                  d2g d3      d4        Z&d5 Z'd6 Z(d7 Z)d8 Z*d9 Z+y:);TestRollingTSc           
          t        ddddt        j                  dgit        d      t        d      t        d      t        d	      t        d
      g      }| |j	                  d      j                          y )Nr   r            r   r   r   r    r!   r"   2s)r   npnanr	   rollingsumselfr#   s     r   test_doc_stringzTestRollingTS.test_doc_string-   so    1aBFFA&'-.-.-.-.-.	
 	


4r   c                 0   d}t        j                  t        |      5  |j                  d       d d d        d}t        j                  t        |      5  |j	                         j                  d       d d d        y # 1 sw Y   PxY w# 1 sw Y   y xY w)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 	-OO8O,	- *]]:S1 	;!))):	; 	;		- 	-	; 	;s   B !B B	Br   2MSr)   c                     d}t        j                  t        |      5  |j                  |       d d d        y # 1 sw Y   y xY w)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 	)OO4O(	) 	) 	)s	   :A1D2msc                 (    |j                  |       y )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  |j                  d|       d d d        y # 1 sw Y   y xY w)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   sA    - 	 ]]:S1 	;OO4TO:	; 	; 	;s	   ;Ac                    |}d}t        j                  t        |      5  |j                  dd       d d d        |j	                         }t        dt        |            |d<   |j                  d	d      j                          d
}t        j                  t        |      5  |j                  d	d       d d d        |j                  d	d      j                  j                          y # 1 sw Y   xY w# 1 sw Y   AxY w)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JJdxJ0	1 WWYZR93


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

$3
'))--/	1 	1	, 	,s   C+#C7+C47D c                 L   t        t        ddd      t        d      d      }|j                  j                  sJ |j                  dd      j                          |j                  d      }|j                  j                  sJ |j                  d      j                          y )	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!HM
 tt++++


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


4r   c                 V   t        t        ddd      t        d      d      }|j                  d      }|j                  j                         }|d   |d<   ||_        |j                  j                  rJ d	}t        j                  t        |
      5  |j                  d      j                          d d d        |j                         }d}t        j                  t        |
      5  |j                  dd      j                          d d d        y # 1 sw Y   axY w# 1 sw Y   y xY w)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!HM
 \\# hh..0!4Q!7A&883333.]]:S1 	#JJt  "	# ^^3 	 ]]:S1 	+JJtJ$((*	+ 	+	# 	#	+ 	+s    D("DDD(c                    t        t        d      t        ddd      d      }t        d      t        d      t        d      t        d      t        d	      g|d
<   |j	                  d
      j                  d      j                  j                         j                  d      }|j                  dd
      j                  j                         }t        j                  ||       |j	                  d
      j                  d      dg   j                         j                         dd
g   }|j                  dd
      dg   j                         }t        j                  ||       y )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W

 )*)*)*)*)*
3 <<$,,T24488:FFDFQDS)++//1
vx0 LL%%d+SE2668DDFSzR 	 DS)3%0446
fh/r   c           	         t        t        d      t        d      t        d      t        d      t        d      g      j                  |      }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      }|j                  dd      j                         }|}t        j                  ||       t        dddt        j
                  d
gd      }|j                  dd      j                  j                         }t        j                  ||       |g d   }|j                  dd      g d   j                         }t        j                  ||       y )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^   -.-.-.-.-.
 '$- 	 $Arvvq)
 $
 #1aBFFA*>RWM#
	
 DS)--/
fh/1aBFFA.S9DS)++//1
vx0_-DS)/:>>@
fh/r   c                 *   |j                         }t        ddd      |_        |j                  dd      j	                         }|j                  d      j	                         }t        j                  ||       t        ddd	      |_        |j                  dd      j	                         }|j                  d	d      j	                         }t        j                  ||       |j                  dd      j	                         }|j                  d	d      j	                         }t        j                  ||       |j                  d      j	                         }|j                  d	      j	                         }t        j                  ||       y )
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::<4(,,.
fh/j!$?::QA:6::<4Q7;;=
fh/::QA:6::<4Q7;;=
fh/::Q:'++-4(,,.
fh/r   c                 d   |}|j                  dd      j                         }|j                  d      j                         }t        j                  ||       |j                  dd      j                         }|j                  dd      j                         }t        j                  ||       y )Nr)   r(   rO   r,   )r/   r0   rd   rf   rx   s        r   test_min_periodszTestRollingTS.test_min_periods   s     ::aQ:/335D!%%'
fh/::aQ:/335Da0446
fh/r   c           	         t        t        d      t        d      t        d      t        d      t        d      g      j                  |      }t        ddgdz  i|	      }d
}t	        j
                  t        |      5  |j                  dd       d d d        |j                         }g d|d<   |j                  dd      j                         }t        j                  ||       |j                  d      j                         }t        j                  ||       |j                         }g d|d<   |j                  dd      j                         }t        j                  ||       |j                         }t        j                  ddddg|d<   |j                  dd      j                         }t        j                  ||       |j                         }t        j                  dddt        j                  g|d<   |j                  dd      j                         }t        j                  ||       y # 1 sw Y   xY w)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 	:OO4O9	: 779)D1557
fh/ D!%%'
fh/779)D0446
fh/779aA.D0446
fh/779aBFF3D3779
fh/3	: 	:s   =H77Ic                 ~   |}|j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd      j                         }|j                         }t
        j                  t
        j                  d	t
        j                  d
g|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  d      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd	      j                         }|j                         }t
        j                  t
        j                  d	ddg|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       y )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;;=779)
fh/4Q7;;=779)
fh/4Q7;;=779BFFA6
fh/4Q7;;=779)
fh/4(,,.779)
fh/4Q7;;=779)
fh/4Q7;;=779Aq1
fh/4Q7;;=779*
fh/r   c                 @   |}|j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       y 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<<>779)
fh/4Q7<<>779/
fh/r   c                 @   |}|j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       y r   )r/   medianrV   rd   rf   r   s        r   test_ragged_medianz TestRollingTS.test_ragged_mediand  s    4Q7>>@779)
fh/4Q7>>@779/
fh/r   c                 D   |}|j                  dd      j                  d      }|j                         }g d|d<   t        j                  ||       |j                  dd      j                  d      }|j                         }g d|d<   t        j                  ||       y )	Nr   r(   rN         ?r   r   r,   r   )r/   quantilerV   rd   rf   r   s        r   test_ragged_quantilez"TestRollingTS.test_ragged_quantilep  s    4Q7@@E779)
fh/4Q7@@E779/
fh/r   c                    |}|j                  dd      j                  d      }|j                         }dgdz  |d<   t        j                  ||       |j                  dd      j                  d      }|j                         }t
        j                  gdz  |d<   t        j                  ||       |j                  d	d      j                  d      }|j                         }dgd
gdz  z   |d<   t        j                  ||       |j                  dd      j                  d      }|j                         }t
        j                  ddddg|d<   t        j                  ||       y )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|  sC   4Q7;;;C779	
fh/4Q7;;;C7791
fh/4Q7;;;C779	)
fh/4Q7;;;C7793X>
fh/r   c                    |}|j                  dd      j                  d      }|j                         }dgdz  |d<   t        j                  ||       |j                  dd      j                  d      }|j                         }t
        j                  gdz  |d<   t        j                  ||       |j                  d	d      j                  d      }|j                         }dgd
gdz  z   |d<   t        j                  ||       |j                  dd      j                  d      }|j                         }t
        j                  ddddg|d<   t        j                  ||       y )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  sC   4Q7;;;C779	
fh/4Q7;;;C7791
fh/4Q7;;;C779
*
fh/4Q7;;;C779c3<
fh/r   c                    |}|j                  dd      j                         }|j                         }t        j                  gdz  |d<   t        j                  ||       |j                  dd      j                         }|j                         }t        j                  gdz  g dz   |d<   t        j                  ||       y )	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<<>7791
fh/4Q7<<>77916
fh/r   c                    |}|j                  dd      j                         }|j                         }t        j                  gdz  |d<   t        j                  ||       |j                  dd      j                         }|j                         }t        j                  gdz  dgz   |d<   t        j                  ||       y )	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<<>7791
fh/4Q7<<>7791v-
fh/r   c                    |}|j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |}|j                  d      j                         }t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd	      j                         }|j                         }t
        j                  t
        j                  d	t
        j                  d	g|d<   t        j                  ||       y )
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==?779)
fh/4(..0
fh/4Q7==?779)
fh/4Q7==?779BFFA6
fh/r   c                    t        t        ddd      g dd      j                  d      }|j                  d      j	                         }|j                         }g d|d	<   t        j                  ||       t        t        ddd      g d
d      j                  d      }t        j                  ||       |j                  d      j	                         }|j                         }g d|d	<   t        j                  ||       |j                  d      j	                         }|j                         }g d|d	<   t        j                  ||       y )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=DUV

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

)C. 	 	fh/D!%%'779)
fh/D!%%'779)
fh/r   c                    |}|j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d	|d<   t        j                  ||       y )
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;;=779)
fh/4Q7;;=779)
fh/4Q7;;=779)
fh/r   c                 .   d}t        dt        j                  j                  d      j	                  |      it        d|d            }|j                  dd	      j                         }|j                  d
      j                         }||z
  dk  j                         j                         sJ |j                  dd	      j                         }|j                  d      j                         }||z
  dk  j                         j                         sJ y )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  s    "))''*::1=>Z=
 ;;qa;0446T"&&(("d*//155777;;s;2668V$((*("d*//155777r   c                    |}|j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       |j                  dd      j                         }|j                         }g d|d<   t        j                  ||       y )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        |j                  d|       |             }t        ||      }t        j                  ||       y )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    , !4Qtf:rRg6FFq	r
;Btf+6;={%8
vx0r   f)
r0   r   r   r   r   r   r   r   r   r   c                 6   |dz  }|j                  d      }|j                  d      } t        ||             } t        ||             }t        j                  ||       |j	                  d      }|j	                  d      }t        j                  ||       y )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            }|j	                  dd      }|j                  d	
      } t        |             }fd}|j                  |j                  j                        j                  |      j                  dd      }t        j                  ||       y )Nr   2   r   r   r   r+   09:0016:005hr8   c                 l    | j                  dd      }  t        | j                  dd                   S )Nr   r   r   r(   r{   )between_timer   r/   )xr   s    r   
agg_by_dayz+TestRollingTS.test_all2.<locals>.agg_by_dayo  s2    w0A:7199QA9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
 oogw/KKtK$A	=
 JJrxx||$**:6BBQUBV 	 	fh/r   c                    t        ddd      }t        t        j                  t	        |            |      }|j                  d      j                         }t        t        j                  gdgt	        |      dz
  z  z   |      }t        j                  ||       |j                  d	d
      j                         }t        j                  ||       |j                  d      j                         }t        t        j                  dgdgt	        |      d	z
  z  z   |      }t        j                  ||       |j                  dd
      j                         }t        j                  ||       y )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  s    r=BIIc#h's3D!%%'266(cUc#hl%;;3G
vx0JJqaJ0446	
vy1D!%%'2663-3%3s8a<*@@L
vx0JJqaJ0446	
vy1r   c           	      J   t        t        d      t        d      t        d      t        d      t        d      g      j                  |      }t        dg di|      }|j	                  d	      j                         }t        dg d
i|      }t        j                  ||       y )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B%P
fh/r   c                     t        dg ig       }|j                  d      j                         }t        dg ig       }t        j                  ||       y )Nr   r+   r   )r   r/   r   rd   rf   r   s       r   test_rolling_on_emptyz#TestRollingTS.test_rolling_on_empty  sI    "~R0D!%%'h^26
fh/r   c           	      d   t        dt        d      it        j                  t	        dd      t        d      gddg	      
      }|j                  d|j                  j                  d            j                         }t        dg di|j                  
      }t        j                  ||       y )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    uQx ))J2E!H=fe_
 Ebhh&?&?&GHLLN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&   )   s   ; [[Ve-?W-?-?-B%CD) E) [[VdKGKKNE%BC% D% [[Vc5("((92E%FG; H;00+20@#0J0*0-0^(0T
0
0
00,0,
0
00*000$8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 [[	
00082(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  |j                  d
|      j                          d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)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    s    Vc
"C19i'37F	266!9	'	'BFHqyJ	zC50I)J	K .''XF 	.JJsJ&++-	.. .	. 	.. .s$   #B>?"B2!B>2B;	7B>>Cpyarrowc            	          t        t        j                  dt        j                        t	        t        dd      d            } | j                  d      j                         }t        j                  ||        y )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
0V !}wl&CD	. E	. y	- 	-r   