o
    	h.                     @   s   d Z ddlZddlZddlZddlZg Zeej	jD ]Z
eeej	je
 qeej	jD ]Z
eeej	je
 q-dd eD Zejdedd ZdS )a  Test that all ufuncs have float32-preserving signatures.

This was once guaranteed through the code generation script for
generating ufuncs, `scipy/special/_generate_pyx.py`. Starting with
gh-20260, SciPy developers have begun moving to generate ufuncs
through direct use of the NumPy C API (through C++). Existence of
float32 preserving signatures must now be tested since it is no
longer guaranteed.
    Nc                 C   s   g | ]
}t |tjr|qS  )
isinstancenpufunc).0funcr   r   ]/var/www/vscode/kcb/lib/python3.10/site-packages/scipy/special/tests/test_ufunc_signatures.py
<listcomp>   s    r	   r   c                 C   sb   t dd | jD }t  }|D ]}||dddd|ddddg q||ks/J d S )Nc                 s   s4    | ]}d |v sd|v sd|v sd|v s|V  qdS )liqpNr   )r   sigr   r   r   	<genexpr>#   s     z(test_ufunc_signatures.<locals>.<genexpr>dfDF)settypesupdatereplace)r   r   expanded_typesr   r   r   r   test_ufunc_signatures   s   
r   )__doc__numpyr   pytestscipy.special._ufuncsscipyscipy.special._gufuncs_ufuncsdirspecialfuncnameappendgetattr_gufuncsmarkparametrizer   r   r   r   r   <module>   s    
