a
    `                     @   s   d dl mZ d dlmZ d dlZd dlZd dlm	Z	m
Z
 d dlmZmZ d dlmZ zd dlZW n   dZY n0 G dd deZG d	d
 d
eZdS )    )OrderedDict)SkipTestN)hvPlothvPlotTabular)StoreScatter)ComparisonTestCasec                   @   s<   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd ZdS )TestOverridesc                 C   s2   dd l }tjddgddgddggdd	gd
| _d S )Nr                     xy)columns)Zhvplot.pandaspdZ	DataFramedfselfhvplot r   9lib/python3.9/site-packages/hvplot/tests/testoverrides.pysetUp   s    zTestOverrides.setUpc                 C   sT   t | jddd}|dd}td|d}| |jdd | |jdd d S )	N*   widthheightr   r   bokehplotr   r   )r   r   r   lookup_optionsassertEqualoptionsget)r   r   curveoptsr   r   r   test_define_default_options   s
    
z)TestOverrides.test_define_default_optionsc                 C   s   t | jddddi}|jdd}|jdd}td|d}td|d}| |jdd | |jd	d | 	|jdd | 	|jd	d d S )
Ncustom_scatterr   r   r   r   r    r!   r   r   )
r   r   r)   scatterr   r"   r#   r$   r%   assertNotEqual)r   r   r)   r*   custom_optsr'   r   r   r   test_define_custom_method   s    z'TestOverrides.test_define_custom_methodc                 C   s   t | jddddi}|jdd}|jdd}td|d}td|d}| |jdd | |jd	d | 	|jdd | 	|jd	d d S )
Nr*   r   r   r   r   r    r!   r   r   )
r   r   r*   liner   r"   r#   r$   r%   r+   )r   r   r)   r&   r,   r'   r   r   r   test_define_customize_method)   s    z*TestOverrides.test_define_customize_methodc                 C   s,   t | jdddii}| |jddt d S )Nr*   kindr.   r   r   )r   r   ZassertIsInstancer*   r   r   r   r   r   'test_attempt_to_override_kind_on_method4   s    z5TestOverrides.test_attempt_to_override_kind_on_methodc                 C   s$   t | jdd}t|jdks J d S )Nzx>2)queryr   )r   r   len_datar   r   r   r   test_pandas_query_metadata8   s    z(TestOverrides.test_pandas_query_metadataN)	__name__
__module____qualname__r   r(   r-   r/   r1   r5   r   r   r   r   r	      s   r	   c                   @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
TestXArrayOverridesc                 C   sr   t d u rtdtdddgfdddgfdddgfg}t tdd|g d	jt jd
dgdgdd| _d S )NzXArray not availabletimer   r
   latlon   )r   r   r   )r:   r;   r<   r   r   )Zdims)Zlat1)	xrr   r   Z	DataArraynpZarangeZreshapeZassign_coordsda_img_by_time)r   Zcoordsr   r   r   r   ?   s    &zTestXArrayOverrides.setUpc                 C   s&   t | jddid}|jjdks"J d S )Nr:   r
   Ziselr   r   r@   r4   ndimr   r   r   r    test_xarray_isel_scalar_metadataG   s    z4TestXArrayOverrides.test_xarray_isel_scalar_metadatac                 C   s<   t | jddgid}|jjdks$J t|jjdks8J d S )Nr:   r
   rA   r   )r   r@   r4   rC   r3   r:   r   r   r   r   #test_xarray_isel_nonscalar_metadataK   s    z7TestXArrayOverrides.test_xarray_isel_nonscalar_metadatac                 C   s&   t | jddid}|jjdks"J d S )Nr:   r
   )Zselr   rB   r   r   r   r   test_xarray_sel_metadataP   s    z,TestXArrayOverrides.test_xarray_sel_metadataN)r6   r7   r8   r   rD   rE   rF   r   r   r   r   r9   =   s   r9   )collectionsr   Zunittestr   Znumpyr?   Zpandasr   Zhvplot.plottingr   r   Z	holoviewsr   r   Zholoviews.element.comparisonr   Zxarrayr>   r	   r9   r   r   r   r   <module>   s   
,