Your IP : 216.73.216.213


Current Path : /opt/alt/python34/lib64/python3.4/test/__pycache__/
Upload File :
Current File : //opt/alt/python34/lib64/python3.4/test/__pycache__/test_numeric_tower.cpython-34.pyc

�
g f�@s�ddlZddlZddlZddlZddlZddlmZddlmZ	ddl
mZej
jZej
jZGdd�dej�ZGdd�dej�Zd	d
�Zedkr�e�ndS)�N)�run_unittest)�Decimal)�Fractionc@speZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dS)�HashTestcCs?|jt|�t|�dj||��|j||�dS)Nz&got different hashes for {!r} and {!r})�assertEqual�hash�format)�self�x�y�r�</opt/alt/python34/lib64/python3.4/test/test_numeric_tower.py�check_equal_hashszHashTest.check_equal_hashcCs$|jdd�|jdd�dS)NFrT�)r)r	rrr
�
test_boolsszHashTest.test_boolscCs\xYtdd�D]H}|j|t|��|j|t|��|j|t|��qWx[td�D]M}d|d}|tt|��kr�|j|t|��|j|t|��n|j|t|��|j|t|��|j|t|��|j|t|��d|}|j|t|��|j|t|��|j|t|��|j|t|��|j|t|��|j|t|��qiWx�td�D]�}tjd�}tjd|d|�}|j|t|��|j|t|��|tt|��kr�|j|t|��q�q�WdS)Ni��d�ri,�
i���)�ranger�float�D�F�int�randomZ	randrange)r	�i�n�_�errr
�
test_integerss6
zHashTest.test_integerscCs|jdd	�|jdtd��|jd
td��|jdtd��|jdtd��|jtd�td��|jtd�td��xmtd�D]_}tj�tjtj�dd�}|j|tj|��|j|tj|��q�WdS)Ngrz-0.0�infz-infi�gi@gY@g�g�g�)	rrrrrr�mathZexpZ
from_float)r	rr
rrr
�test_binary_floatsCs'zHashTest.test_binary_floatsc	Csidddddd	td�td�g}x8dD]0}x'|D]}|j|t||��q>Wq1WdS)N�g�?g�?g��@rz-infg�g�g�����)r#r")rr�complex)r	�test_values�zero�valuerrr
�test_complexXs


zHashTest.test_complexcCs^dddddg}x*|D]"}|jt|�td��qW|jtd�td��|jtd	�td��|jtd
�td��|jtd�td��|jtd�td
��|jtd�td
��|jtd�td
��|jtd�td
��|jtd�td
��|jtd�td
��dS)N�0z-0z0.0z-0.0e10z000e-10rz1.00rz1.00000z-1.00z-1.00000Z123e2i0Z1230e1Z12300z12300.0z12300.00z	12300.000���r*)rr)r	Zzerosr&rrr
�
test_decimalscs
 zHashTest.test_decimalscCs�|jttdt��t�|jttddt��t�|jttdtd��d�|jtttd��d�dS)Nr��rr*)rrr�_PyHASH_MODULUS�_PyHASH_INF)r	rrr
�test_fractionsus$#zHashTest.test_fractionscCs<Gdd�d�}d|�h}|jt|�d�dS)Nc@s(eZdZdd�Zdd�ZdS)z6HashTest.test_hash_normalization.<locals>.HalibutProxycSs
td�S)N�halibut)r)r	rrr
�__hash__�sz?HashTest.test_hash_normalization.<locals>.HalibutProxy.__hash__cSs
|dkS)Nr1r)r	�otherrrr
�__eq__�sz=HashTest.test_hash_normalization.<locals>.HalibutProxy.__eq__N)�__name__�
__module__�__qualname__r2r4rrrr
�HalibutProxy�sr8r1r)r�len)r	r8r
rrr
�test_hash_normalization}sz HashTest.test_hash_normalizationN)r5r6r7rrrr!r(r+r0r:rrrr
rs&rc@s(eZdZdd�Zdd�ZdS)�ComparisonTestcCs
td�td�dtdd�dddd	d
td�td�td
�tdd�td�tdd�tdd�dtd�g}xyt|�D]k\}}x\||dd�D]F}|j||�|j||�|j||�|j||�q�Wq�WdS)Nz-infz-1e425000000g�������r-g��Q�	@rgg�Tz1.2z1.3z1.4i_5i�z1.414213562373095048801688724iC�i�;i��:i�Jgvܼ5J�iZinfinityrg������i��g��Q�	����)rrr�	enumerateZ
assertLessZassertLessEqualZ
assertGreaterZassertGreaterEqual)r	r%r�first�secondrrr
�test_mixed_comparisons�s0						z%ComparisonTest.test_mixed_comparisonscCsd}d
}xOddtd�td�td�fD]&}|j||�|j||�q4Wxoddtd�td�td�fD]F}|j||�|j||�|j||�|j||�q�Wx�ddtd�td�td�ddtd�td�td�|fD][}xRtjtjtjtj	fD]2}|j
t|||�|j
t|||�qAWqWdS)Ng�?yg��Q�	@y������@rrg@y�?g��Q�	�y��Q�	�������@)rrr$rZassertNotEqual�operator�le�lt�ge�gtZassertRaises�	TypeError)r	�z�w�v�oprrr
r(�s..$.%zComparisonTest.test_complexN)r5r6r7rAr(rrrr
r;�sr;cCsttt�dS)N)rrr;rrrr
�	test_main�srL�__main__)Zunittestrr �sysrBZtest.supportr�decimalrrZ	fractionsrr�	hash_info�modulusr.rr/ZTestCaserr;rLr5rrrr
�<module>s�8