
    e	                         d dl mZ d dlZ	 d dlZn# e$ r dZY nw xY w eedu d          Zd dlZd dl	m
Z
mZ d dlmZ d dlmZmZmZ  G d de          ZdS )	    )skipIfNzSciPy is not available.)CurveScatter)ComparisonTestCase)resamplerollingrolling_outlier_stdc                   n    e Zd ZdZd Zd Zd Zed             Zed             Z	d Z
d Zd	 Zd
 Zd ZdS )TimeseriesOperationTestszo
    Tests for the various timeseries operations including rolling,
    resample and rolling_outliers_std.
    c                 F   t          j        ddd          | _        g d| _        g d| _        t          | j        | j        f          | _        t          | j                  | _        t          | j        | j        f          | _        t          | j                  | _	        d S )Nz
2016-01-01z
2016-01-07D)freq)                     )r   r   r   r   g      $@r   r   )
pd
date_rangedatesvaluesoutliersr   
date_curve	int_curvedate_outliersint_outliers)selfs    Slib/python3.11/site-packages/holoviews/tests/operation/test_timeseriesoperations.pysetUpzTimeseriesOperationTests.setUp   s    ]<CHHH
+++///T[ 9::t{++"DJ#>??!$-00    c                     t          | j        d          }t          j        ddddddg}|                     |t          | j        |f                     d S 	Nr   )rolling_window      ?g      @g      @g      @      @g      @r   r   npnanassertEqualr   r   r   rolledrolled_valss      r    test_roll_datesz(TimeseriesOperationTests.test_roll_dates!   sW    ;;;vsCc3<
K'@!A!ABBBBBr"   c                     t          | j        d          }t          j        ddddddg}|                     |t          |                     d S r$   r   r   r)   r*   r+   r   r,   s      r    test_roll_intsz'TimeseriesOperationTests.test_roll_ints&   sP    :::vsCc3<{!3!344444r"   c                     t          | j        dd          }t          j        dddddt          j        g}|                     |t          | j        |f                     d S Nr   triang)r%   window_typer   r   r   r   r(   r,   s      r    test_roll_date_with_window_typez8TimeseriesOperationTests.test_roll_date_with_window_type+   s[    QQQvq!Q1bf5
K'@!A!ABBBBBr"   c                     t          | j        dd          }t          j        dddddt          j        g}|                     |t          |                     d S r4   r1   r,   s      r    test_roll_ints_with_window_typez8TimeseriesOperationTests.test_roll_ints_with_window_type1   sT    xPPPvq!Q1bf5{!3!344444r"   c                     t          | j        d          }t          t          t          j        ddg                    }ddg}|                     |t          ||f                     d S )NW)rule
2016-01-03
2016-01-10r   r'   r   r   listmapr   	Timestampr+   r   r   	resampledr   valss       r    test_resample_weeklyz-TimeseriesOperationTests.test_resample_weekly7   se    T_3777	Sl'CDDEE3xE5$-$8$899999r"   c                     t          | j        dd          }t          t          t          j        ddg                    }ddg}|                     |t          ||f                     d S )Nr;   left)r<   closedr=   r>   r&   r   r?   rC   s       r     test_resample_weekly_closed_leftz9TimeseriesOperationTests.test_resample_weekly_closed_left=   sg    T_3vFFF	Sl'CDDEEQxE5$-$8$899999r"   c                     t          | j        dd          }t          t          t          j        ddg                    }ddg}|                     |t          ||f                     d S )Nr;   rH   )r<   labelz
2015-12-27r=   r   r'   r?   rC   s       r    test_resample_weekly_label_leftz8TimeseriesOperationTests.test_resample_weekly_label_leftC   sg    T_3fEEE	Sl'CDDEE3xE5$-$8$899999r"   c                 |    t          | j        dd          }|                     |t          dg                     d S )Nr   r   r%   sigma)r   
   )r	   r   r+   r   r   r   s     r    test_rolling_outliers_std_intsz7TimeseriesOperationTests.test_rolling_outliers_std_intsI   s@    &t'8RSTTT7G9#5#566666r"   c                     t          | j        dd          }|                     |t          t	          j        d          dfg                     d S )Nr   r   rO   z
2016-01-05rQ   )r	   r   r+   r   r   rB   rR   s     r    test_rolling_outliers_std_datesz8TimeseriesOperationTests.test_rolling_outliers_std_datesM   sP    &t'9!STUUU7R\,-G-G,L+M#N#NOOOOOr"   N)__name__
__module____qualname____doc__r!   r/   r2   
scipy_skipr7   r9   rF   rJ   rM   rS   rU    r"   r    r   r      s         
1 1 1C C C
5 5 5
 C C ZC
 5 5 Z5
: : :: : :: : :7 7 7P P P P Pr"   r   )unittestr   pandasr   scipyImportErrorrZ   numpyr)   	holoviewsr   r   holoviews.element.comparisonr   holoviews.operation.timeseriesr   r   r	   r   r[   r"   r    <module>rd      s             LLLL   EEEVETM#<==
     $ $ $ $ $ $ $ $ ; ; ; ; ; ; Q Q Q Q Q Q Q Q Q Q=P =P =P =P =P1 =P =P =P =P =Ps    