U
    /eO                     @   s   d dl Zd dlZd dlZd dlmZmZ d dlm	Z	m
Z
mZ d dlmZ ejddddgd	d
 Zdd Zdd Zdd Zdd Zdd ZdS )    N)Array
from_array)Seriesfrom_pandas
to_numeric)Delayedarg5   z5 c                 C   s*   t | }t|tst| dks&td S )Nr
   )r   
isinstancer   AssertionErrorcompute)r   output r   E/tmp/pip-unpacked-wheel-dbjnr7gq/dask/dataframe/tests/test_numeric.pytest_to_numeric_on_scalars
   s    r   c                  C   sT   t ddddg} tddddg}t| }t|ts8tt| t|ksPtd S )	N1.02z-3z5.1g      ?g       @g      gffffff@)	r   nparrayr   r   r   r   listr   )r   expectedr   r   r   r   test_to_numeric_on_dask_array   s
    r   c                  C   sh   t ddddg} t| dd}t | }t|}|jdks>tt|tsLtt| t|ksdtd S )Nr   r   ffffff   ZnpartitionsZint64	pdr   r   r   dtyper   r   r   r   sr   r   r   r   r   r   (test_to_numeric_on_dask_dataframe_series   s    
r"   c                  C   sv   t ddddg} t| dd}t | }t|t jg ddd	}|jdksLtt|tsZtt| t|ksrtd S )
Nr   r   r   r   r   r   float64r   metar   r    r   r   r   2test_to_numeric_on_dask_dataframe_series_with_meta#   s    
r'   c               	   C   sT   t ddddg} t | | d}t|dd}tjtdd	 t| W 5 Q R X d S )
Nr   r   r   r   )abr   r   z arg must be a list, tuple, dask.match)r   r   Z	DataFramer   pytestraises	TypeErrorr   )r!   Zdfr   r   r   r   8test_to_numeric_on_dask_dataframe_dataframe_raises_error-   s
    r/   c                	   C   sZ   t jtdd tddd W 5 Q R X t jtdd tdtjg ddd	 W 5 Q R X d S )
Nzinvalid error valuer*   10invalid)errorsz``meta`` is not allowedr#   r$   r%   )r,   r-   
ValueErrorr   KeyErrorr   r   r   r   r   r   test_to_numeric_raises5   s    r5   )Znumpyr   Zpandasr   r,   Z
dask.arrayr   r   Zdask.dataframer   r   r   Zdask.delayedr   markZparametrizer   r   r"   r'   r/   r5   r   r   r   r   <module>   s   


