U
    Hvf                     @   s>   d dl Zd dlmZmZ d dlZd dlmZ G dd dZ	dS )    N)assert_allcloseassert_equalc                   @   s   e Zd Zdd Zdd Zejjdej	de
j fej	ddfej	de
jfej	d	e
jfej	d
e
jfejde
jfejddfejde
j fejd	e
jfejd
e
jfg
ddddddddddg
ddd Zdd ZdS )TestInverseErrorFunctionc                 C   s2   t ddd}ttd| t|ddd d S )N   e   r   V瞯<rtolZatol)npZlinspacer   scerfcinverfinv)selfx r   C/tmp/pip-unpacked-wheel-96ln3f52/scipy/special/tests/test_erfinv.pytest_compliment	   s    z(TestInverseErrorFunction.test_complimentc                 C   sT   t ddddddddd	d
g
}t|}ddddddddddg
}t||ddd d S )Nr   g?g?g333333?g?g      ?g333333?gffffff?g?g?g        gt9%D?gE	r7,?g^Htp?gM?g
$?gEd0?gOBکs?g)%?gQwF?r   r	   )r   arrayr   r   r   )r   yactualexpectedr   r   r   test_literal_values   s    	
z,TestInverseErrorFunction.test_literal_valueszf, x, yr   r   r   id   g          zerfinv at lower boundzerfinv at midpointzerfinv at upper boundzerfinv below lower boundzerfinv above upper boundzerfcinv at lower boundzerfcinv at midpointzerfcinv at upper boundzerfcinv below lower boundzerfcinv above upper bound)idsc                 C   s   t ||| d S )N)r   )r   fr   r   r   r   r   test_domain_bounds'   s    z+TestInverseErrorFunction.test_domain_boundsc              
   C   sf   t ddddddddg}t d	d
ddddddg}tt||dd ttt||dd d S )Ng#B;r   g+=g|=g:0yE>gv(x>gw$}>gư>g_;g* <gfQ=g6^ D\=gIC>gr4iu>gKŢ+z>gg>)r
   g+<)r   r   r   r   r   erf)r   r   r   r   r   r   test_erfinv_asymptE   s"    z+TestInverseErrorFunction.test_erfinv_asymptN)__name__
__module____qualname__r   r   pytestmarkZparametrizer   r   r   infnanr   r   r   r   r   r   r   r      s:   


r   )
Znumpyr   Znumpy.testingr   r   r#   Zscipy.specialspecialr   r   r   r   r   r   <module>   s   