a
    Lf                     @   sR   d dl Z d dlZd dlZd dlZd dlmZmZ ddl	m
Z
 G dd de
jZdS )    N)_selected_int_kind_func_selected_real_kind_func   )utilc                   @   sj   e Zd ZeddddgZejje	j
dk dddd	 Zd
d Zejje  ddddd ZdS )TestKindZtestssrckindzfoo.f90l       zFails for 32 bit machines)reasonc              	   C   sL   | j j}tdD ]6}||t|ksJ d| dt|d||qdS )z/Test `int` kind_func for integers up to 10**40.(   zselectedintkind(): expected 	 but got N)moduleselectedintkindrangeselected_int_kind)selfr   i r   S/var/www/ai-form-bot/venv/lib/python3.9/site-packages/numpy/f2py/tests/test_kind.pytest_int   s    zTestKind.test_intc              	   C   sL   | j j}tdD ]6}||t|ksJ d| dt|d||qdS )z
        Test (processor-dependent) `real` kind_func for real numbers
        of up to 31 digits precision (extended/quadruple).
            selectedrealkind(r   r   Nr   selectedrealkindr   selected_real_kindr   r   r   r   r   r   	test_real   s    zTestKind.test_realppcz4Some PowerPC may not support full IEEE 754 precisionc              	   C   sN   | j j}tddD ]6}||t|ksJ d| dt|d||qdS )zU
        Test kind_func for quadruple precision [`real(16)`] of 32+ digits .
        r   r
   r   r   r   Nr   r   r   r   r   test_quad_precision'   s    zTestKind.test_quad_precisionN)__name__
__module____qualname__r   ZgetpathsourcespytestmarkZskipifsysmaxsizer   r   Zxfailplatformmachinelower
startswithr   r   r   r   r   r      s   
	r   )r%   osr#   r'   Znumpy.f2py.crackfortranr   r   r   r    r   ZF2PyTestr   r   r   r   r   <module>   s   