U
    _{f                     @   s  d dl Zd dlZd dlmZ d dlZd dlmZ	 ej
dejejgej
ddd Zej
dejejejejejgdd Zej
dejejgd	d
 Zej
dd dgd dggdd Zej
je ddej
dddd ifdddifddd ifdddifdi fdi fdi fgdd Zdd Zdd Zdd Zej
d d!d"gej
d#d d$gd%d& Zej
d'dd(d)gd*fdd(d)dgd*fdgd+fgd,d- Z ej
d.d/d0d1d2gd3d4 Z!ej
d d!d"gej
d5d0d1gd6d7 Z"ej
d d!d"gej
d#d d8gd9d: Z#dS );    N)IS64ufuncz7ignore:invalid value encountered in sign:RuntimeWarningc                 C   sp   t jdddtjgdd}| |}t j| |tdd}t|| t |}| |}t |}t	|| d S )N      Float64dtype)
pdarraynpnanastypefloattmassert_extension_array_equalSeriesassert_series_equalr   aresultexpecteds r   i/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/pandas/tests/arrays/floating/test_function.pytest_ufuncs_single
   s    

r   c              	   C   s   t jdddtjgdd}tjdd& | |}t j| |tdd}W 5 Q R X t|| t 	|}tjdd& | |}t j	| |tdd}W 5 Q R X t
|| d S )N      ?皙?      @r   r   ignore)invalid)r
   r   r   r   Zerrstater   r   r   r   r   r   r   r   r   r   test_ufuncs_single_float   s    "
"r!   c                 C   s$  t jdddtjgdd}| ||}t j| |t|tdd}t|| tddddg}| ||}t j| |t|dd}t|| | ||}t j| ||tdd}t|| | |d}t j| |tddd}t|| | d|}t j| d|tdd}t|| d S )	Nr   r   r   r   r   r         )r
   r   r   r   r   r   r   r   )r   r   r   r   arrr   r   r   test_ufuncs_binary_float(   s"    
 



r%   valuesr   c                 C   s6   t j| dd}tj|}|jdd}t|| d S )Nr   r   Fskipna)r
   r   r   addreducesumr   Zassert_almost_equal)r&   r$   resr   r   r   r   test_ufunc_reduce_raisesD   s    r-   zGH 36579: fail on 32-bit system)reasonzpandasmethname, kwargsvarZddofZstdZkurtosisZskewZsemc              	   C   st   t jddddddtjtjgdd}t|| }|f |}t jddddddgd	d}t|| }|f |}||ksptd S )
N皙?r   g333333?g?g      ?g333333?r   )datar	   float64)r
   r   r   r   getattrAssertionError)Zpandasmethnamekwargsr   Z
pandasmethr   s2r   r   r   r   test_stat_methodM   s    "



r7   c                  C   s   t jdddt jgdd} | jdd}t jddt jg| jd}|j| jksLtt jdddg|d	d
d}t	|| | jdd}t jddg|d d d	d
d}t	|| d S )Nr0   r   r   r   F)Zdropnar   r   Int64countindexr	   nameT)
r
   r   NAvalue_countsIndexr	   r4   r   r   r   )r$   r   idxr   r   r   r   test_value_counts_nad   s    rB   c                  C   sT   t jg dd} |  }t jg dd}|jdks2tt jg |ddd}t|| d S )Nr   r   r8   r9   r:   )r
   r   r?   r@   r	   r4   r   r   )serr   rA   r   r   r   r   test_value_counts_emptyq   s    rD   c                  C   sh   t jdddt jgdd} | jdd}t jddg| d d dd	d
d }|jj| jksXtt|| d S )Nr0   r   r   r   T)	normalizer   r   Z
proportionr:   r"   )	r
   r   r>   r?   r;   r	   r4   r   r   )rC   r   r   r   r   r    test_value_counts_with_normalizez   s
    "rF   r(   TF	min_countr#   c                 C   sP   t jdddd g|d}|j| |d}| r>|dkr>|dksLtn|t jksLtd S )Nr   r   r"   r   r(   rG   r         @)r
   r   r+   r4   r>   r(   rG   r	   r$   r   r   r   r   test_floating_array_sum   s
    rK   zvalues, expectedr   r"   rI           c                 C   s(   t j| dd}t|}||ks$td S )Nr   r   )r
   r   r   r+   r4   )r&   r   r$   r   r   r   r   test_floating_array_numpy_sum   s    
rM   opr+   minmaxprodc                 C   s   t dddgdd dgt jdd dgddd	}t|j|  }t|tjsLtt|	d
|  }t jtddgt jddgdddt j
ddgd
dd}t|| d S )Nr   br   r"   r0   r   r   r   )ABCrS   r   )rT   rU   )r<   )r;   )r
   Z	DataFramer   r3   rU   
isinstancer   r2   r4   groupbyr@   r   Zassert_frame_equal)rN   Zdfr   r   r   r   r   test_preserve_dtypes   s    	 rX   methodc                 C   sX   t jddd g|d}t||}|| d}| rF||dkr:dndksTtn|t jksTtd S )NrL   r   r   r'   rO   r   r   )r
   r   r3   r4   r>   )r(   rY   r	   r$   funcr   r   r   r   test_floating_array_min_max   s    

r[   	   c                 C   sN   t jddd g|d}|j| |d}| r<|dkr<|dksJtn|t jksJtd S )Nr   g       @r   rH   r   r   )r
   r   rQ   r4   r>   rJ   r   r   r   test_floating_array_prod   s
    r]   )$numpyr   ZpytestZpandas.compatr   Zpandasr
   Zpandas._testingZ_testingr   markZparametrizeabssignfilterwarningsr   logexpsincossqrtr!   r)   subtractr%   r-   Zskipifr7   rB   rD   rF   rK   rM   rX   r[   r]   r   r   r   r   <module>   sZ   
 







		 $


