Your IP : 216.73.216.196


Current Path : /opt/alt/python310/lib64/python3.10/test/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/test/__pycache__/test_numeric_tower.cpython-310.pyc

o

0�i��@s�ddlZddlZddlZddlZddlZddlmZddlm	Z
ejjZ
ejjZGdd�de�ZGdd�dej�ZGdd	�d	ej�Zed
krLe��dSdS)�N)�Decimal)�FractioncsHeZdZdZ�fdd�ZeZdd�ZeZedd��Z	edd	��Z
�ZS)
�
DummyIntegralzADummy Integral class to test conversion of the Rational to float.cstt��|��S�N)r�super�__mul__��self�other��	__class__��>/opt/alt/python310/lib64/python3.10/test/test_numeric_tower.pyrszDummyIntegral.__mul__cCstSr)�NotImplementedrr
r
r�__truediv__szDummyIntegral.__truediv__cCst|�Sr�r�r	r
r
r�	numerator�zDummyIntegral.numeratorcC�td�S)N�rrr
r
r�denominator!rzDummyIntegral.denominator)�__name__�
__module__�__qualname__�__doc__r�__rmul__r�__rtruediv__�propertyrr�
__classcell__r
r
rrrs
rc@sLeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dS)�HashTestcCs.|�t|�t|�d�||��|�||�dS)Nz&got different hashes for {!r} and {!r})�assertEqual�hash�format)r	�x�yr
r
r�check_equal_hash's
�zHashTest.check_equal_hashcCs|�dd�|�dd�dS)NFrTr)r&rr
r
r�
test_bools-szHashTest.test_boolscCs�tdd�D]}|�|t|��|�|t|��|�|t|��qtd�D]�}d|d}|tt|��krF|�|t|��|�|t|��|�|t|��|�|t|��|�|t|��|�|t|��d|}|�|t|��|�|t|��|�|t|��|�|t|��|�|t|��|�|t|��q$td�D]2}t�d�}t�d|d|�}|�|t|��|�|t|��|tt|��kr�|�|t|��q�dS)Ni������d�ri,�
)�ranger&�float�D�F�int�randomZ	randrange)r	�i�n�_�er
r
r�
test_integers1s:
��zHashTest.test_integerscCs�|�dd�|�dtd��|�dtd��|�dtd��|�dtd��|�td�td��|�td�td��td�D]#}t��t�t��dd	�}|�|t�|��|�|t�|��q>dS)
N���rz-0.0�inf�-infr(gi@gY@)	r&r.r/r-r,r1�mathZexpZ
from_float)r	r4r$r
r
r�test_binary_floatsWs�zHashTest.test_binary_floatsc	CsFddddddtd�td�g}d	D]}|D]}|�|t||��qqdS)
Nr7r8��?g�g�?g���r9r:)r8r7)r-r&�complex)r	�test_values�zero�valuer
r
r�test_complexls���zHashTest.test_complexcCs�gd�}|D]}|�t|�td��q|�td�td��|�td�td��|�td�td��|�td�td��|�td	�td
��|�td�td
��|�td�td
��|�td
�td
��|�td�td
��|�td�td
��dS)N)�0z-0z0.0z-0.0e10z000e-10rz1.00rz1.00000z-1.00���z-1.00000Z123e2i0Z1230e1Z12300z12300.0z12300.00z	12300.000)r&r.)r	Zzerosr@r
r
r�
test_decimalswszHashTest.test_decimalscs�|�ttdt��t�|�ttddt��t�|�ttdtd��d�|�tttd��d�ttd�td�dd��|�t�fd	d
��|�t��d�dS)NrrD��rr*F)Z
_normalizecs�j�jSr)rrr
�r$r
r�<lambda>�sz)HashTest.test_fractions.<locals>.<lambda>g�?)	r!r"r/�_PyHASH_MODULUS�_PyHASH_INFr�assertRaises�	TypeErrorr-rr
rHr�test_fractions�szHashTest.test_fractionscCs,Gdd�d�}d|�h}|�t|�d�dS)Nc@�eZdZdd�Zdd�ZdS)z6HashTest.test_hash_normalization.<locals>.HalibutProxycSr�N�halibut)r"rr
r
r�__hash__��z?HashTest.test_hash_normalization.<locals>.HalibutProxy.__hash__cSs|dkSrPr
rr
r
r�__eq__�rSz=HashTest.test_hash_normalization.<locals>.HalibutProxy.__eq__N)rrrrRrTr
r
r
r�HalibutProxy�srUrQr)r!�len)r	rUr$r
r
r�test_hash_normalization�s
z HashTest.test_hash_normalizationN)rrrr&r'r6r<rBrErNrWr
r
r
rr &s&r c@rO)�ComparisonTestcCs�td�td�dtdd�dddd	d
td�td�td
�tdd�td�tdd�tdd�dtd�g}t|�D]'\}}||dd�D]}|�||�|�||�|�||�|�||�q>q2dS)Nr:z-1e425000000g������i��rGg��Q�	����r7g�Tz1.2z1.3z1.4i_5i�z1.414213562373095048801688724iC�i�;i��:i�Jgvܼ5J�iZinfinityr)r-r.r/�	enumerateZ
assertLessZassertLessEqualZ
assertGreaterZassertGreaterEqual)r	r?r2�first�secondr
r
r�test_mixed_comparisons�s6���z%ComparisonTest.test_mixed_comparisonscCsd}d}ddtd�td�td�fD]}|�||�|�||�qddtd�td�td�fD]}|�||�|�||�|�||�|�||�q-ddtd�td�td�ddtd�td�td�|fD]}tjtjtjtj	fD]}|�
t|||�|�
t|||�qmqadS)Ny�?y��Q�	�������@rr=r*g@)r/r.r>r!ZassertNotEqual�operator�le�lt�ge�gtrLrM)r	�z�w�v�opr
r
rrB�s$���zComparisonTest.test_complexN)rrrr]rBr
r
r
rrX�srX�__main__)Zunittestr1r;�sysr^�decimalrr.Z	fractionsrr/�	hash_info�modulusrJr9rKr0rZTestCaser rXr�mainr
r
r
r�<module>s 8�