o
    EbK                     @   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
g d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)nplinspacer   scerfcinverfinv)selfx r   A/usr/lib/python3/dist-packages/scipy/special/tests/test_erfinv.pytest_compliment   s   $z(TestInverseErrorFunction.test_complimentc                 C   s0   t tddd}g d}t||ddd d S )Nr   g?
   )
r   gt9%D?gD	r7,?g^Htp?gM?g
$?gEd0?gPBکs?g)%?gPwF?r   r	   )r   r   r   r   r   )r   Z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)Zidsc                 C   s   t ||| d S )N)r   )r   fr   yr   r   r   test_domain_bounds   s   z+TestInverseErrorFunction.test_domain_boundsc                 C   sN   t g d}t g d}tt||dd ttt||dd d S )N)g#B;r   g+=绽|=g:0yE>gv(x>gw$}>gư>)g_;g* <gfQ=g6^ D\=gIC>gr4iu>gKŢ+z>gg>r   )r
   )r   Zarrayr   r   r   Zerf)r   r   r   r   r   r   test_erfinv_asympt=   s   
z+TestInverseErrorFunction.test_erfinv_asymptN)__name__
__module____qualname__r   r   pytestZmarkZparametrizer   r   r   infnanr   r   r   r   r   r   r   r      s(    


r   )
Znumpyr   Znumpy.testingr   r   r"   Zscipy.specialZspecialr   r   r   r   r   r   <module>   s
    