File: //lib/python3/dist-packages/numpy/random/tests/__pycache__/test_extending.cpython-310.pyc
o
6��a�
� @ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlm Z zd dl
Z
W n ey3 dZ
Y nw ejj
dkr<dZ
z#ejdd��Ze�dde� d dlZW d � n1 sYw Y W n eyj dZY nw zd dlZd dlmZ W n ey� dZY nw d d lmZ ed
�Zee�ek r�dZejjedu dd�ejjd
d� ��Zejjedu p�e
du dd�dd� �Zejje
du dd�dd� �ZdS )� N)�exec_mod_from_location� T)�record�always� )�version)�LooseVersionz0.29.21zrequires cython)�reasonc C s� t j�t j�t�d�}t�|| d � | d d d }tjt j
ddddt| d �d
dt| d �g t|�d
� t|d �� }d}t
|�D ]
\}}||v rM nqCJ d�|���W d � n1 s_w Y d }}t| d ��}|D ]}d|v r{|�� }d|v r�|�� }qqW d � n1 s�w Y |d us�J �|d us�J �td|� td|�} ddlm}
| �|
d�dd�}|jdks�J �|jtjks�J �d S )Nz..�random� _examples�cythonzsetup.py�build�installz--prefix�
installdirz#--single-version-externally-managedz--recordztmp_install_log.txt)�cwdzextending.cz0NumPy API declarations from "numpy/__init__.pxd"Fz-Could not find '{}' in C file, wrong pxd usedz
extending.�extending_distributions� extendingr )�PCG64�
�d)r )�os�path�join�dirname�__file__�shutil�copytree�
subprocess�
check_call�sys�
executable�str�open� enumerate�format�stripr �numpy.randomr �uniforms_ex�shape�dtype�np�float64)�tmp_path�srcdir� build_dir�fid�txt_to_find�i�line�so1�so2r r �values� r6 �C/usr/lib/python3/dist-packages/numpy/random/tests/test_extending.py�test_cython, sR �� ���� ���
�r8 zrequires numba and cffic C � ddl m} d S �Nr �r )�numpy.random._examples.numbar r; r6 r6 r7 �
test_numbaX s r= z
requires cffic C r9 r: )�numpy.random._examples.cffir r; r6 r6 r7 � test_cffi] s r? ) r �pytestr r r �warnings�numpyr* �numpy.distutils.misc_utilr �cffi�ImportError�flags�optimize�catch_warnings�w�filterwarnings�DeprecationWarning�numbar �Cython.Compiler.Versionr �cython_version�distutils.versionr �required_version�mark�skipif�slowr8 r= r? r6 r6 r6 r7 �<module> sV �
����*�