403Webshell
Server IP : 118.27.122.248  /  Your IP : 216.73.217.130
Web Server : Apache
System : Linux web0264.sh.tyo1 4.18.0-553.79.1.lve.el7h.x86_64 #1 SMP Wed Oct 15 16:34:46 UTC 2025 x86_64
User : c9415830 ( 11735)
PHP Version : 8.4.17
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/alt/python36/lib64/python3.6/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/alt/python36/lib64/python3.6/test/__pycache__/test_float.cpython-36.opt-1.pyc
3

�w2_g��@s�ddlZddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
mZmZddl
mZmZmZmZed�Zed�Zeed�Zejed�Zejeed	�d
�Zejje�p�ejZejjed�Z Gdd
�d
e�Z!Gdd�de�Z"Gdd�dej#�Z$eGdd�dej#��Z%dZ&e'e(e&��Z)dZ*e'e(e*��Z+dZ,e'e(e,��Z-dZ.e'e(e.��Z/eGdd�dej#��Z0Gdd�dej#�Z1Gdd�dej#�Z2Gdd�dej#�Z3e	j4Gd d!�d!ej#��Z5Gd"d#�d#ej#�Z6ej7Z8ej9Z:Gd$d%�d%ej#�Z;e<d&k�r�ej=�dS)'�N)�support)�VALID_UNDERSCORE_LITERALS�INVALID_UNDERSCORE_LITERALS)�isinf�isnan�copysign�ldexp�inf�nan�
__getformat__zrequires __getformat__�
__setformat__zrequires __setformat__zformatfloat_testcases.txtc@seZdZdS)�
FloatSubclassN)�__name__�
__module__�__qualname__�rr�4/opt/alt/python36/lib64/python3.6/test/test_float.pyr
sr
c@seZdZdS)�OtherFloatSubclassN)rrrrrrrrsrc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zej	ddd
�dd��Z
dd�Zdd�Zdd�Z
dd�Zdd�Zejdd��Zejdd��ZdS)�GeneralFloatCasescCsd|jtd�d�|jtd�d�|jtd�d�|jttd�|jttd�|jttd�|jttd�|jttd	�|jttd
�|jttd�|jttd�|jttd
�|jttd�|jttd�|jtti�|jtdti�|jttd�|jttd�|jttd�|jtd�d�|jtd�d�tddd�tddd�|jttd�dS)Ng��Q�	@i:g�s@z  3.14  z	  0x3.1  z  -0x3.p-1  z  +0x3.p-1  z++3.14z+-3.14z-+3.14z--3.14z.nanz+.inf�.z-.z
not 'dict'u�z-1.7d29z3D-14u  ٣.١٤  u
 3.14 �.�1i��1uこんにちは)�assertEqual�float�assertRaises�
ValueError�	TypeError�assertRaisesRegex�UnicodeEncodeError)�selfrrr�
test_float$s0zGeneralFloatCases.test_floatcs�xRtD]J�t�fdd�dD��s|jt��t���|jt��t�jdd���qWx:tD]2��dkrhqZt�fdd�dD��sZ|jtt��qZW|jttd	�|jttd
�|jttd�|jttd�|jttd
�|jttd�dS)Nc3s|]}|�kVqdS)Nr)�.0�ch)�litrr�	<genexpr>Esz5GeneralFloatCases.test_underscores.<locals>.<genexpr>ZjJxXoObB�_��0_7�09_99c3s|]}|�kVqdS)Nr)r"r#)r$rrr%KsZ_NaNZNa_NZIN_Fz-_INFz-INF_s0_.�9)r(r))	r�anyrr�eval�replacerrr)r r)r$r�test_underscoresCs
 
z"GeneralFloatCases.test_underscorescs�Gdd�dt��Gdd�dt�}Gdd�dt�}tt�fdd�||tg}yd	d
lm�Wntk
rlYnX|j�fdd��xb|D]Z}|d�}|jt|���:|j	t
|�d
�|jtd��t
|d��WdQRXWdQRXq�WdS)Nc@seZdZdS)zAGeneralFloatCases.test_non_numeric_input_types.<locals>.CustomStrN)rrrrrrr�	CustomStr[sr.c@seZdZdS)zCGeneralFloatCases.test_non_numeric_input_types.<locals>.CustomBytesN)rrrrrrr�CustomBytes\sr/c@seZdZdS)zGGeneralFloatCases.test_non_numeric_input_types.<locals>.CustomByteArrayN)rrrrrrr�CustomByteArray]sr0cs�|j��S)N)�decode)�b)r.rr�<lambda>bsz@GeneralFloatCases.test_non_numeric_input_types.<locals>.<lambda>r)�arraycs
�d|�S)N�Br)r2)r4rrr3lss 3.14  g��Q�	@zcould not convert�A�sAAAAAAAAAAAAAAAA)
�str�bytes�	bytearray�
memoryviewr4�ImportError�appendZsubTest�typerrrr)r r/r0Z	factories�f�xr)r.r4r�test_non_numeric_input_typesXs(

z.GeneralFloatCases.test_non_numeric_input_typescCs�|jttd�dd��d�|jttd�dd��d�|jttd�dd��d�|jttd�dd��d�|jttd�dd��d�dS)	Ns12.3��gffffff@s12.3s12.3 s12.3As12.34)rrr;)r rrr�test_float_memoryviewus
z'GeneralFloatCases.test_float_memoryviewcs`�fdd�}|d�|d�|d�|d�|d�|d�|d	�|d
�|d�|d�dS)
NcsD�jtd|fd��}t|�WdQRX�jt|j�d|f�dS)Nz	float(%r))�msgz%could not convert string to float: %r)rrrrr8Z	exception)�s�cm)r rr�check}sz3GeneralFloatCases.test_error_message.<locals>.check�½u123½z  123 456  s  123 456  u٣١٤!z123z123 245z123245s123s123�r)r rHr)r r�test_error_message|sz$GeneralFloatCases.test_error_message�
LC_NUMERICZfr_FRZde_DEcCs*ddl}|j�ddks"|jd�|jtd�d�|jtd�d�|jtd�d�|jtd	�d
�|jtd�d�|jtd
�d�|jtd�d�|jtd�d�|jtd�d�|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�|jtd�d�|jtd�d�dS) NrZ
decimal_point�,zdecimal_point is not ","z  3.14  g��Q�	@z+3.14  z-3.14  z.14  g�Q���?z3.  g@z3.e3  gp�@z3.2e3  g�@z2.5e-1  g�?z5e-1g�?z  3,14  z	  +3,14  z	  -3,14  z	  0x3.1  z  -0x3.p-1  z  +0x3.p-1  z
  25.e-1  g@z
  .25e-1  g�������?g��Q�	�)�locale�
localeconvZskipTestrrrrZassertAlmostEqual)r rMrrr�test_float_with_comma�s(
z'GeneralFloatCases.test_float_with_commac'Cs�Gdd�dt�}Gdd�dt�}Gdd�dt�}Gdd�dt�}Gd	d
�d
t�}|jt|��d�|jt|��d�|jt��|jt|d��d�WdQRX|jtt|d
��|jt|d��d�Gdd�d�}|jttj	|��Gdd�d�}|jt��|jt|��d�WdQRX|jt��|j
tt|���t�WdQRX|jt��|jt|��d�WdQRX|jt��|j
tt|���t�WdQRXdS)Nc@seZdZdd�ZdS)z4GeneralFloatCases.test_floatconversion.<locals>.Foo1cSsdS)NgE@r)r rrr�	__float__�sz>GeneralFloatCases.test_floatconversion.<locals>.Foo1.__float__N)rrrrPrrrr�Foo1�srQc@seZdZdd�ZdS)z4GeneralFloatCases.test_floatconversion.<locals>.Foo2cSsdS)NgE@r)r rrrrP�sz>GeneralFloatCases.test_floatconversion.<locals>.Foo2.__float__N)rrrrPrrrr�Foo2�srRc@seZdZddd�Zdd�ZdS)z4GeneralFloatCases.test_floatconversion.<locals>.Foo3�cSstj|d|�S)N�)r�__new__)�cls�valuerrrrU�sz<GeneralFloatCases.test_floatconversion.<locals>.Foo3.__new__cSs|S)Nr)r rrrrP�sz>GeneralFloatCases.test_floatconversion.<locals>.Foo3.__float__N)rS)rrrrUrPrrrr�Foo3�s
rXc@seZdZdd�ZdS)z4GeneralFloatCases.test_floatconversion.<locals>.Foo4cSsdS)N�*r)r rrrrP�sz>GeneralFloatCases.test_floatconversion.<locals>.Foo4.__float__N)rrrrPrrrr�Foo4�srZc@seZdZdd�ZdS)z6GeneralFloatCases.test_floatconversion.<locals>.FooStrcSstt|��dS)NrB)rr8)r rrrrP�sz@GeneralFloatCases.test_floatconversion.<locals>.FooStr.__float__N)rrrrPrrrr�FooStr�sr[gE@�rY�8g"@c@seZdZdd�ZdS)z4GeneralFloatCases.test_floatconversion.<locals>.Foo5cSsdS)Nr'r)r rrrrP�sz>GeneralFloatCases.test_floatconversion.<locals>.Foo5.__float__N)rrrrPrrrr�Foo5�sr^c@seZdZdd�ZdS)z1GeneralFloatCases.test_floatconversion.<locals>.FcSstd�S)NgE@)r)r rrrrP�sz;GeneralFloatCases.test_floatconversion.<locals>.F.__float__N)rrrrPrrrr�F�sr_)
�objectrr8rZassertWarns�DeprecationWarningrr�timeZsleep�assertIsr>r
)r rQrRrXrZr[r^r_rrr�test_floatconversion�s, z&GeneralFloatCases.test_floatconversioncCsD|jdj��|jdj��|jtd�j��|jtd�j��dS)Ng�������?g�?r
r	)ZassertFalse�
is_integer�
assertTruer)r rrr�test_is_integer�sz!GeneralFloatCases.test_is_integercCsfx d"D]\}}|j|j�|�qWxNtd
�D]B}tj�}|dtjd#d�9}|j�\}}|jt|�j|�|�q,Wtj}|j|dd�|td�j���|j|d
d	�|td�j���|j|dd	�|td�j���|j|dd�|td�j���|j|d$d�|td%�j���|j|d&d�|td'�j���|j	t
td�j�|j	t
td�j�|j	ttd�j�dS)(N��?���rrB�'@�rTi'�
�d�g@g�?l�L�33�l@g������@i4gh�@r	z-infr
�rirj�rhrq������rtrj�rsru�rrB�rkrw�rmrT�rlry)rrrvrxrzi����l�����L�33�g�������i���gh��)r�as_integer_ratio�range�randomZrandintr�__truediv__�	fractionsZFractionr�
OverflowErrorr)r r?Zratio�i�n�d�Rrrr�test_floatasratio�s6z#GeneralFloatCases.test_floatasratiocCsrttddtf}xl|D]d}|j||g�|j||f�|j||h�|j||di�|j|gj|�dd|�|j||�qWx�|D]�}|j|g|gkd||f�|j|f|fkd||f�|j|h|hkd||f�|j|di|dikd||f�|g|f|h|dif\}}}}|j||kd	|�|j||kd
|�|j||kd|�|j||kd|�q�WdS)
Ngg�?rBz[].count('%r') != 1z[%r] != [%r]z(%r,) != (%r,)z{%r} != {%r}z{%r : None} != {%r : None}z[%r] not equal to itselfz(%r,) not equal to itselfz{%r} not equal to itselfz{%r : None} not equal to itself)�INF�NAN�assertInr�countrf)r Zfloatsr?�l�trFr�rrr�test_float_containment	s&

z(GeneralFloatCases.test_float_containmentcCs$|j|td|�f|td|�f�dS)Ng�?)rr)r �ar2rrr�assertEqualAndEqualSign"sz)GeneralFloatCases.assertEqualAndEqualSigncCs�tj}|j|dd�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|dd�d	�|j|d
d�d�|j|d
d�d�|j|dd�d�|j|dd�d�|j|dd�d�dS)Ng�?gg0��.�++g�g0��.�+�g�g�g�g�g0��.�+�g�g0��.�+�g�g�g�g�g�g�g�g�g�)�operator�modr�)r r�rrr�test_float_mod(sz GeneralFloatCases.test_float_modcCs�	�	x�ttjfD�	]�}|jt|tt���|jt|dt���|jt|dt���|jt|d
t���|jt|dt���|jt|dt���|jt|dt���|jt|dt���|jt|tt���|jt|tt���|jt|tt���|jt|td���|jt|td���|jt|td���|jt|td���|jt|td���|jt|td���|jt|tt���|jt|dd�|jt|dd�|jt|dd�|jt|dd�|jt|dd�|jt|dd�|j|dd�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|dt�d�|j|d t�d�|j|dt�d�|j|dd!�d�|j|dd"�d�|j|dd#�d�|j|dd$�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|dt�d�|j|dt�d�|j|td�d�|j|d%d�d�|j|d&d�d�|j|d'd�d�|j|d(d�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|td�d�|j|td�d�|j|td)�d�|j|d*d+�d�|j|d,d-�d�|j|d.d/�d�|j|d0d1�d�|j|dd2�d�|j|dd3�d�|j|dd4�d�|j|dd5�d�|j|td6�d�|j|td7�d�|j	t
|d8d9��t�|j	t
|d:d��t�|j	t
|d;d<��t�|j	t
|d=d��t�|j	t
|d>d?��t�|j	t
|d@d��t�|j|dAt�t�|j|dBt�t�|j|dt�t�|j|dt�t�|j|tt�d�|j|dCt�d�|j|dt�d�|j|tt�d�|j|dDt�d�|j|dEt�d�|j|dt�d�|j|dt�d�|j|tt�t�|j|dFt�t�|j|dt�t�|j|tt�t�|j|tdG�dH�|j|tdI�d�|j|tdJ�d�|j|td�t�|j|td�t�|j|td�t�|j|td�t�|j|td�t�|j|td�t�|j|tdK�d�|j|tdL�d�|j|tdM�d�|j|dNdO�d�|j|dPdQ�dR�|j|dSdT�d�|j|dUd�d�|j|dVd�dW�|j|dXd�d�|j|dYdZ�d�|j|d[d\�d]�|j|d^d_�d�|j|d`d�d�|j|dad�db�|j|dcd�d�|j|ddd�d�|j|dde�d�|j|ddf�d�|j|dd�d�|j|dd�d�|j|dd�d�|j|ddg�d�|j|dd�d�|j|dhdi�d�|j|djd�d�|j|dkdl�d�|j	t
|dmdn��t�|j|dodp�dq�|j|ddr�d�|j|dds�d�|j|ddt�d�|j|dud�d�|j	t
|dvd	��t�|j|dwd
�dx�|j|dd�d�|j|dd	�d�|j|dd
�d�qWdS)yNg@g�?g�?gg�?g@g}Ô%�I�Tg@�@gB�@gD�@g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g�g}Ô%�I��g�g}Ô%�I��g�g�g@��g�gB��g�gD��g�g@��gB��gD��g�g�g�g�)�powr�rfrr�r�r�ZeroDivisionErrorr�rr>�complex)r Zpow_oprrr�test_float_pow<sz GeneralFloatCases.test_float_powN)rrrr!r-rArDrJrZrun_with_localerOrdrgr�r�r��requires_IEEE_754r�r�rrrrr"s4!rc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�FormatFunctionsTestCasecCstjd�tjd�d�|_dS)N�doubler)r�r)rr�save_formats)r rrr�setUp	szFormatFunctionsTestCase.setUpcCs(tjd|jd�tjd|jd�dS)Nr�r)rrr�)r rrr�tearDown
sz FormatFunctionsTestCase.tearDowncCsT|jtjd�dddg�|jtjd�dddg�|jttjd�|jttjd�dS)Nr��unknownzIEEE, big-endianzIEEE, little-endianr�chickenrB)r�rrrrr)r rrr�test_getformatsz&FormatFunctionsTestCase.test_getformatcCs�x�dD]�}tj|d�|j|dkr8|jttj|d�nF|j|dkrZ|jttj|d�n$|jttj|d�|jttj|d�|jttj|d�qW|jttjdd�dS)Nr�rr�zIEEE, big-endianzIEEE, little-endianr�)r�r)rrr�rr)r r�rrr�test_setformats 








z&FormatFunctionsTestCase.test_setformatN)rrrr�r�r�r�rrrrr�sr�s�s�s�s�c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�UnknownFormatTestCasecCs4tjd�tjd�d�|_tjdd�tjdd�dS)Nr�r)r�rr�)rrr�r)r rrrr�;szUnknownFormatTestCase.setUpcCs(tjd|jd�tjd|jd�dS)Nr�r)rrr�)r rrrr�AszUnknownFormatTestCase.tearDowncCs@x:dtfdtfdtfdtfgD]\}}|jttj||�qWdS)Nz>dz<d)�
BE_DOUBLE_INF�
BE_DOUBLE_NAN�
LE_DOUBLE_INF�
LE_DOUBLE_NANrr�struct�unpack)r �fmt�datarrr� test_double_specials_dont_unpackEs
z6UnknownFormatTestCase.test_double_specials_dont_unpackcCs@x:dtfdtfdtfdtfgD]\}}|jttj||�qWdS)Nz>fz<f)�BE_FLOAT_INF�BE_FLOAT_NAN�LE_FLOAT_INF�LE_FLOAT_NANrrr�r�)r r�r�rrr�test_float_specials_dont_unpackLs
z5UnknownFormatTestCase.test_float_specials_dont_unpackN)rrrr�r�r�r�rrrrr�9sr�c@s6eZdZejdd��Zejdd��Zejdd��ZdS)�IEEEFormatTestCasecCs:x4dtfdtfdtfdtfgD]\}}tj||�qWdS)Nz>dz<d)r�r�r�r�r�r�)r r�r�rrr�test_double_specials_do_unpack[s
z1IEEEFormatTestCase.test_double_specials_do_unpackcCs:x4dtfdtfdtfdtfgD]\}}tj||�qWdS)Nz>fz<f)r�r�r�r�r�r�)r r�r�rrr�test_float_specials_do_unpackcs
z0IEEEFormatTestCase.test_float_specials_do_unpackcCsJddlm}|jtjdd�tjd|��|jtjdd�tjd|��dS)Nr)�FLT_MAXz<fgn���Ggn����)Z	_testcapir�rr�Zpack)r r�rrr�test_serialized_float_roundingksz1IEEEFormatTestCase.test_serialized_float_roundingN)rrrrr�r�r�r�rrrrr�Ysr�c@s*eZdZdd�Zejdd��Zdd�ZdS)�FormatTestCasecCsD|jtdd�d�|jtdd�d�|jtdd�d�|jtdd�d�d)}|jt|d�t|��|jt|d�t|��|jt|d�t|��|jt|d
�t|��|jtdd�d�|jtd*d�d�|jtdd�d�|jtd+d�d�|jtdd�d�|jtd,d�d�|jtd-d�d�|jttdd�x�dd�ttd�td�d�D�dd�ttd�td �d�D�D]�}|d!k�rt|jttd|�|jttd|�|jttd.|�|jttd"|�|jttd/|�|jttd#|�|jttd0|��qtW|jttd�d$�|jttd%�d&�|jttd�d'�|jttd%�d(�dS)1Ngr?z0.000000r'z0.0g{�G�z�?z0.01�grog@�-�>�2g�?z1.000000z	-1.000000z fz	 1.000000z+fz	+1.000000�%z-100.000000%g@rFcSsg|]}t|��qSr)�chr)r"r@rrr�
<listcomp>�sz.FormatTestCase.test_format.<locals>.<listcomp>r��zrBcSsg|]}t|��qSr)r�)r"r@rrrr��s�A�ZzeEfFgGn%g}Ô%�I�Tg0��.�++r
r_r�r	r�g%I�$I�,@g�g�g�g�g�g}Ô%�I��g0��.�+�)	r�formatr8rrr|�ordr�r�)r r@�format_specrrr�test_formatss> &
zFormatTestCase.test_formatcCs�tt��~}xv|D]n}|jd�r q|j�}|s.qttj|jd��\}}|j�\}}|j|t|�|�|j|t|�d|�qWWdQRXdS)Nz--z->r�)	�open�format_testfile�
startswith�strip�mapr8�splitrr)r Ztestfile�lineZlhsZrhsr��argrrr�test_format_testfile�s


z#FormatTestCase.test_format_testfilecCs:|jtdd�d�|jtdd�d�|jtdd�d�dS)Ngw��/�^@z.4z123.5g
ףp=J�@z	1.235e+03g������@z	1.235e+04)rr�)r rrr�test_issue5864�szFormatTestCase.test_issue5864N)rrrr�rr�r�r�rrrrr�qs5r�c@s4eZdZdd�Zejeedd�dkd�dd��Zd	S)
�ReprTestCasecCsnttjjtjjt�dd��}xB|D]:}|j�}|s$|jd�rBq$t|�}|j	|tt
|���q$W|j�dS)Nrzfloating_points.txt�#)r��os�path�joinr��__file__r�r�r+r�repr�close)r Zfloats_filer��vrrr�	test_repr�s
zReprTestCase.test_repr�float_repr_styler'�shortz.applies only when using short float repr stylecCs�ddddddddd	d
ddd
ddddddddddddg}xt|D]l}d|}|j|tt|���|j|tt|���|jtt|��tt|���|jtt|��tt|���q<WdS)Nz0.0z1.0z0.01z0.02z0.03z0.04z0.05z
1.23456789z10.0z100.0z1000000000000000.0z9999999999999990.0z1e+16z1e+17z0.001z0.001001z0.00010000000000001z0.0001z9.999999999999e-05z1e-05z8.72293771110361e+25z7.47005307342313e+26z2.86438000439698e+28z8.89142905246179e+28z3.08578087079232e+35r�)rr�rr8)r Ztest_stringsrFZnegsrrr�test_short_repr�s>

zReprTestCase.test_short_reprN)	rrrr��unittest�
skipUnless�getattr�sysr�rrrrr��sr�c@s|eZdZdd�Zdd�Zdd�Zdd�Zeje	e
d	d
�dkd�d
d��Zeje	e
d	d
�dkd�dd��Zdd�Z
dd�ZdS)�
RoundTestCasecCsr|jttt�|jttt�|jttt�|jtttd�|jtttd�|jtttd�|jttdd�dS)Ngg�?zceci n'est pas un integery�?g�)rr��roundr�rr�r)r rrr�test_inf_nan�szRoundTestCase.test_inf_nancCs�xfddddddddgD]L}|jtd	|�d	�|jtd|�d�|jtd
|�d
�|jtd|�d�qW|jtdd
�d�|jtd
d�d
�|jtdd�d�|jtdd�d�|jtdd�d�dS)NiDiEi�rT�rB� rogw��/�^@g�u�<�7~g�g��P.5�_i,i3go���!	@i4i5gS��i;g�ili���llgw��/�^�gw��/�^�go���!	�go���!	�)rr�)r r�rrr�test_large_nszRoundTestCase.test_large_ncCsnxhdd
ddddddgD]L}|jtd|�d	�|jtd|�d�|jtd
|�d	�|jtd|�d	�qWdS)Ni4i5i�rBrTr�rogw��/�^@gg�u�<�7~g�i���i���ip���li�li�li�l����gw��/�^�g�)rr�)r r�rrr�test_small_ns
zRoundTestCase.test_small_ncCs$|jttdd�|jttdd�dS)Ng3t�<{�i4gv;w0�B�i���gv;w0�B�i���)rr�r�)r rrr�
test_overflowszRoundTestCase.test_overflowr�r'r�z.applies only when using short float repr stylecCs�|jtdd�d�|jtdd�d�|jtdd�d�|jtdd�d�|jtd	d�d�|jtd
d�d�|jtdd�d�|jtd
d�d�|jtdd�d�|jtdd�d�dS)NgCrBg�������B�g9@g4@g�A@gD@g�F@g�K@gN@g@P@g�R@gT@g@U@g�W@gY@���r�r�r�r�r�r�r�)rr�)r rrr�test_previous_round_bugssz&RoundTestCase.test_previous_round_bugscCs�x�td�D]|}|d}|jtt|d��t|d��|jtt|d��t|d��|jtt|d��t|d��|jtt|d	��t|d
��q
Wx�tddd
�D]|}|d}|jtt|d��t|d��|jtt|d��t|d��|jtt|d��t|d��|jtt|d	��t|d
��q�Wx�td�D]~}tj�}|jtt|d��t|d��|jtt|d��t|d��|jtt|d��t|d��|jtt|d	��t|d
���q"WdS)Ni�g@�@z.0frz.1frBz.2frTz.3fr�rpi�rn)r|rrr�r�r})r r�r@rrr�test_matches_float_format1s$  z'RoundTestCase.test_matches_float_formatcs��fdd�}x�dD]�}d|dd�}d|dd�}||td�||td�||td�||td�||td�||td�||td�||td�||td�||td�||td�||td�qWdS)Ncs6�j||||�|dd�}�jt||�||�dS)NrB)rr�)r�rW�expected)r rr�testMsz0RoundTestCase.test_format_specials.<locals>.test�%e�%f�%g�%.0e�%.6f�%.20g�%#e�%#f�%#g�%#.20e�%#.15f�%#.3gz%+rBz% r	z-infr
z+infz+nanz infz nan)r�r�r�r�r�r�r�r�r�r�r�r�)r�r�)r r�r�ZpfmtZsfmtr)r r�test_format_specialsJs"z"RoundTestCase.test_format_specialscCs�x<td�tdd�tddd�fD]}|j|d�|j|t�qWx<td�tdd�tddd�fD]}|j|d�|j|t�q\WdS)Ng�G�z��?)ZndigitsrBg{�G�z�?rT)r�rZassertIsInstance�int)r r@rrr�test_None_ndigitshs""zRoundTestCase.test_None_ndigitsN)rrrr�r�r�r�r�r�r�r�r�r�r�r�rrrrr��s	r�c@sTeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zej	e
edd�d
kd�dd��ZdS)�
InfNanTestcCs�|jttd���|jttd���|jttd���|jttd���|jttd���|jttd���|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd	��d�|jttd
��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd
�|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�|jttd�dS)Nr	z+infz-infZinfinityz	+infinityz	-infinityr�z+Infz-iNF�Infinityz	+iNfInItYz	-INFINITY�infoz+infoz-info�inz+inz-inZinfinitz+Infinz-INFIZ	infinitysz++Infz-+infz
+-infinityz
--Infinity)rfrrrr�r8rr)r rrr�test_inf_from_strtsLzInfNanTest.test_inf_from_strcCsD|jtd�d�|jtd�d�|jtd�d�|jtd	�d�dS)
Ng�u�<�7~r	z-infg�g�u�<�7�g�g�g�u�<�7�g�)rr�r8)r rrr�test_inf_as_str�szInfNanTest.test_inf_as_strcCsz|jttd���|jttd���|jttd���|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd��d�|jttd�|jttd�|jttd	�|jttd
�|jttd�|jttd�|jttd
�|jttd�|jttd�|jttd�dS)Nr
z+nanz-nanr�z+NAnz-NaNZnanaz+nanaz-nanaZnaz+naz-naz++nanz-+NANz+-NaNz--nAn)rfrrrr�r8rr)r rrr�test_nan_from_str�s,zInfNanTest.test_nan_from_strcCsD|jtd�d�|jtd�d�|jtd
�d�|jtd
�d�dS)Ng�u�<�7~rr
g�g��g�u�<�7�g�g��g�g��g�u�<�7�g�g��)rr�r8)r rrr�test_nan_as_str�szInfNanTest.test_nan_as_strcCs0|jtdtd��d�|jtdtd��d�dS)Ng�?r	z-infg�)rrr)r rrr�test_inf_signs�szInfNanTest.test_inf_signsr�r'r�z.applies only when using short float repr stylecCs0|jtdtd��d�|jtdtd��d�dS)Ng�?r
z-nang�)rrr)r rrr�test_nan_signs�szInfNanTest.test_nan_signsN)
rrrr�rrrrr�r�r�r�rrrrrr�ss-r�c@sdeZdZed�Zed�Zed�Zed�Zdd�Zdd�Z	d	d
�Z
dd�Zd
d�Zdd�Z
dd�ZdS)�HexFloatTestCasez0x.fffffffffffff8p+1024z	0x1p-1022z0x0.0000000000001p-1022z0x0.0000000000001p0cCsdt|�st|�r&t|�t|�krNdSn(||krN|dksJtd|�td|�krNdS|jd||f�dS)Ngg�?z%r not identical to %r)rr�fail)r r@�yrrr�	identical�s$zHexFloatTestCase.identicalcCsb|j|jtdd��|j|jtdd	��|j|jtdd
��|j|jdtdd�tdd��dS)Ng�?i�i2�4g@i�i�i���i���i���)r�MINr�TINY�EPS�MAX)r rrr�	test_ends�szHexFloatTestCase.test_endsc3Cs�ddddddddd	d
ddd
ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3g3}x@|D]8}yt|�}Wntk
r�YqpX|jd4||f�qpWdS)5NZinfiz-Infinitz++infz-+Infz--nanz+-NaNZsnanZNaNsZnnaZanZnfZnfinityZinityZiinityZ0xnanr'� zx1.0p0z0xX1.0p0z	+ 0x1.0p0z	- 0x1.0p0z0 x1.0p0z0x 1.0p0z	0x1 2.0p0z	+0x1 .0p0z0x1. 0p0z
-0x1.0 1p0z	-0x1.0 p0z
+0x1.0p +0z	0x1.0p -0z0x1.0p 0z
+0x1.0p+ 0z
-0x1.0p- 0z
++0x1.0p-0z	--0x1.0p0z
+-0x1.0p+0z	-+0x1.0p0z	0x1.0p++0z
+0x1.0p+-0z
-0x1.0p-+0z	0x1.0p--0z0x1.0.p0z0x.p0z0x1,p0Z0x1pau0x1p0u0x1p0u0x1p0u	0x1.0p0z
0x1p0 
 0x2p0z0x1p0 0x1p0z>Expected float.fromhex(%r) to raise ValueError; got %r instead)�fromHexrr)r Zinvalid_inputsr@�resultrrr�test_invalid_inputs�st
z$HexFloatTestCase.test_invalid_inputscCs�dtfdtfdtfdddg}d
ddd
ddddg}xH|D]@\}}x6|D].}x(|D] }t|||�}|j||�qPWqFWq8WdS)Nr	z	-Infinityr
�1.0��?�-0x.2g�?�-0.0gr'r�	�
z
 	���
)rr���)rr��)rr)r�r�rr)r Zvalue_pairsZ
whitespaceZinpr�Zlead�trailZgotrrr�test_whitespace1s&

z HexFloatTestCase.test_whitespacecCs�|j}|j}|j}|j}|jtd�t�|jtd�t�|jtd�t�|jtd�t�|jtd�t�|jtd�t�|jtd�t�|jtd�t�|jtd	�t�|jtd
�t�|jtd�t�|jtd�t�|jtd
�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd �d�|jtd!�d�|jtd"�d�|jtd#�d�|jtd$�d�|jtd%�d�|jtd&�d�|jtd'�d�|jtd(�d�|jtd)�d�|jtd*�d+�|jtd,�d+�|jtd-�d+�|jtd.�d+�|jtd/�d0�|jtd1�d0�|jtd2�d0�|jtd3�d0�|jtd4�d0�|jtd5�d0�|jtd6�d0�|jtd7�d0�td8�}|jtd9�|�|jtd:�|�|jtd;�|�|jtd<�|�|jtd=�|�|jtd>�|�|jtd?�|�|jtd@�|�|jtdA�|�|jtdB�|�|jtd8�|�|jtdC�|�|jtdD�|�|jtdE�|�|jtdF�|�|jtdG�|�|jtdH�|�|jtdI�|�|jtdJ�|�|jtdK�|�|jtdL�|�|jtdM�|�|jtdN�|�|jtdO�|�|jtdP�|�|jtdQ�|�|jtdR�|�|jtdS�|�|jtdT�|�|jtdU�|�|jtdV�|�|jtdW�|�|jt	tdX�|jt	tdY�|jt	tdZ�|jt	td[�|jt	td\�|jt	td]�|jt	td^�|jt	td_�|jt	td`�|jt	tda�|jt	tdb�|jt	tdc�|jt	tdd�|jt	tde�|jt	tdf�|jt	tdg�|jt	tdh�|jt	tdi�|jt	tdj�|jtdk�|�|jtdl�|�|jtdm�|�|jtdn�do�|jtdp�do�|jtdq��d�|jtdr�do�|jtds��d�|jtdt�do�|jtdu�do�|jtdv��d�|jtdw��d�|jtdx�do�|jtdy��d�|jtdz��d�|jtd{��d	�|jtd|�do�|jtd}��d
�|jtd~�do�|jtd�do�|jtd���d�|jtd���d�|jtd��do�|jtd���d
�|jtd���d�|jtd��|�|jtd��|�|jtd��|�|jtd��do�|jtd��do�|jtd��|�|jtd��|�|jtd��|�|jtd��d�|�|jtd��d�|�|jtd��d�|�|jtd��d�|�|jtd��d�|�|jtd��d�|�|jtd��d�|�|jtd��d�|�|jtd��d�|�|jtd��d�|�|jtd��d�|�|jtd���d�|jtd���d�|jtd��|�|jtd��|�|jtd��|�|jtd���d|�|jtd���d|�|jtd���d|�|jtd���d|�|jtd���d|�|jtd���d|�|jtd���d|�|jtd���d|�|jtd���d|�|jtd���d|�|jtd���d|�|jtd��|d�|�|jtd��|d�|�|jtd��|d�|�|jtd��|d�|�|jtd��|d�|�|jtd��|d�|�|jtd��|d�|�|jtd��|d�|�|jtd��|d�|�|jtd��|d�|�|jtd��||�|jtd��||�|jtd��||�|jtd��||�|jtd��||�|jtd��||�|jtd��||�|jtd��|�|jtd��|�|jtd��|�|jtd��|�|jtd��|�|jtd��|�|jtdƒ|�|jtdÃ|�|jtdă|�|jtdŃ||�|jtdƃ||�|jtdǃ||�|jtdȃ||�|jtdɃ||�|jtdʃ||�|jtd˃||�|jtd̃|d�|�|jtd̓d|�|jtd΃d|�|jtdσd|�|jtdЃd|�|jtdуd|�|jtd҃d|d��|jtdӃd|d��|jtdԃd|d��|jtdՃd|d��|jtdփd|d��|jtd׃d|d��|jtd؃d|d��|jtdكd�|jtdڃd�|jtdۃd�|jtd܃d�|jtd݃d�|jtdރd�|jtd߃d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|jtd�d�|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd�d|�|jtd��d|�|jtd��d|�|jtd��d|�|jtd��d|�|jtd��dd�|�|jtd��dd�|�|jtd��dd�|�|jtd��dd�|�|jtd��dd�|�|jtd��dd�|�|jtd��dd�|�|jt�d�dd�|�|jt�d�dd�|�|jt�d�dd�|�dS(Nr	z+Infz-INFZiNfr�z	+INFINITYz	-infinityz	-iNFiNitYr
z+NaNz-NaNz-nANrg�?z+1z1.z1.0z1.0p0Z01z01.Z0x1z0x1.z0x1.0z+0x1.0Z0x1p0Z0X1p0Z0X1P0Z0x1P0z0x1.p0z0x1.0p0z0x.1p4z0x.1p04z0x.1p004z0x1p+0z0x1P-0z+0x1p0Z0x01p0Z0x1p00z 0x1p0 z
 0x1p0z0x1p0 	Z0xap0g$@Z0xAp0Z0xaP0Z0xAP0Z0xbep0g�g@Z0xBep0Z0xbEp0z0XBE0P-4Z0xBEp0z0xB.Ep4z0x.BEp8z	0x.0BEp12z0x1.921fb54442d18p1z0x.006487ed5110b46p11z0x.00c90fdaa22168cp10z0x.01921fb54442d18p9z0x.03243f6a8885a3p8z0x.06487ed5110b46p7z0x.0c90fdaa22168cp6z0x.1921fb54442d18p5z0x.3243f6a8885a3p4z0x.6487ed5110b46p3z0x.c90fdaa22168cp2z0x3.243f6a8885a3p0z0x6.487ed5110b46p-1z0xc.90fdaa22168cp-2z0x19.21fb54442d18p-3z0x32.43f6a8885a3p-4z0x64.87ed5110b46p-5z0xc9.0fdaa22168cp-6z0x192.1fb54442d18p-7z0x324.3f6a8885a3p-8z0x648.7ed5110b46p-9z0xc90.fdaa22168cp-10z0x1921.fb54442d18p-11z0x1921fb54442d1.8p-47z0x3243f6a8885a3p-48z0x6487ed5110b46p-49z0xc90fdaa22168cp-50z0x1921fb54442d18p-51z0x3243f6a8885a30p-52z0x6487ed5110b460p-53z0xc90fdaa22168c0p-54z0x1921fb54442d180p-55z	-0x1p1024z	0x1p+1025z	+0X1p1030z
-0x1p+1100Z0X1p123456789123456789z+0X.8p+1025z+0x0.8p1025z-0x0.4p1026z	0X2p+1023z	0x2.p1023z-0x2.0p+1023z
+0X4p+1022z0x1.ffffffffffffffp+1023z-0X1.fffffffffffff9p1023z0X1.fffffffffffff8p1023z+0x3.fffffffffffffp1022z0x3fffffffffffffp+970Z0x10000000000000000p960z-0Xffffffffffffffffp960z+0x1.fffffffffffffp+1023z-0X1.fffffffffffff7p1023z$0X1.fffffffffffff7fffffffffffffp1023Z0x0p0gZ0x0p1000z	-0x0p1023Z0X0p1024z	-0x0p1025Z0X0p2000Z0x0p123456789123456789z-0X0p-0z
-0X0p-1000z	0x0p-1023z
-0X0p-1024z
-0x0p-1025z
-0x0p-1072z	0X0p-1073z
-0x0p-1074z	0x0p-1075z	0X0p-1076z
-0X0p-2000z-0x0p-123456789123456789z	0X1p-1075z
-0X1p-1075z-0x1p-123456789123456789z0x1.00000000000000001p-1075z-0x1.1p-1075z0x1.fffffffffffffffffp-1075z	0x1p-1076z	0X2p-1076z	0X3p-1076z	0x4p-1076z	0X5p-1076z	0X6p-1076rTz	0x7p-1076z	0X8p-1076z	0X9p-1076z	0xap-1076z	0Xbp-1076r�z	0xcp-1076z	0Xdp-1076z	0Xep-1076rCz	0xfp-1076z
0x10p-1076z
-0x1p-1076z
-0X2p-1076z
-0x3p-1076z
-0X4p-1076z
-0x5p-1076z
-0x6p-1076z
-0X7p-1076z
-0X8p-1076z
-0X9p-1076z
-0Xap-1076z
-0xbp-1076z
-0xcp-1076z
-0Xdp-1076z
-0xep-1076z
-0Xfp-1076z-0X10p-1076z0x0.ffffffffffffd6p-1022z0x0.ffffffffffffd8p-1022z0x0.ffffffffffffdap-1022z0x0.ffffffffffffdcp-1022z0x0.ffffffffffffdep-1022z0x0.ffffffffffffe0p-1022z0x0.ffffffffffffe2p-1022z0x0.ffffffffffffe4p-1022z0x0.ffffffffffffe6p-1022z0x0.ffffffffffffe8p-1022z0x0.ffffffffffffeap-1022z0x0.ffffffffffffecp-1022z0x0.ffffffffffffeep-1022z0x0.fffffffffffff0p-1022z0x0.fffffffffffff2p-1022z0x0.fffffffffffff4p-1022z0x0.fffffffffffff6p-1022z0x0.fffffffffffff8p-1022z0x0.fffffffffffffap-1022z0x0.fffffffffffffcp-1022z0x0.fffffffffffffep-1022z0x1.00000000000000p-1022z0x1.00000000000002p-1022z0x1.00000000000004p-1022z0x1.00000000000006p-1022z0x1.00000000000008p-1022z0x1.0000000000000ap-1022z0x1.0000000000000cp-1022z0x1.0000000000000ep-1022z0x1.00000000000010p-1022z0x1.00000000000012p-1022z0x1.00000000000014p-1022z0x1.00000000000016p-1022z0x1.00000000000018p-1022z0x0.fffffffffffff0p0z0x0.fffffffffffff1p0z0X0.fffffffffffff2p0z0x0.fffffffffffff3p0z0X0.fffffffffffff4p0z0X0.fffffffffffff5p0z0X0.fffffffffffff6p0z0x0.fffffffffffff7p0z0x0.fffffffffffff8p0z0X0.fffffffffffff9p0z0X0.fffffffffffffap0z0x0.fffffffffffffbp0z0X0.fffffffffffffcp0z0x0.fffffffffffffdp0z0X0.fffffffffffffep0z0x0.ffffffffffffffp0z0X1.00000000000000p0z0X1.00000000000001p0z0x1.00000000000002p0z0X1.00000000000003p0z0x1.00000000000004p0z0X1.00000000000005p0z0X1.00000000000006p0z0X1.00000000000007p0z(0x1.00000000000007ffffffffffffffffffffp0z0x1.00000000000008p0z&0x1.00000000000008000000000000000001p0rBz0X1.00000000000009p0z0x1.0000000000000ap0z0x1.0000000000000bp0z0X1.0000000000000cp0z0x1.0000000000000dp0z0x1.0000000000000ep0z0X1.0000000000000fp0z0x1.00000000000010p0z0X1.00000000000011p0z0x1.00000000000012p0z0X1.00000000000013p0z0X1.00000000000014p0z0x1.00000000000015p0z0x1.00000000000016p0z0X1.00000000000017p0z(0x1.00000000000017ffffffffffffffffffffp0z0x1.00000000000018p0z&0X1.00000000000018000000000000000001p0z0x1.00000000000019p0z0X1.0000000000001ap0z0X1.0000000000001bp0z0x1.0000000000001cp0z0x1.0000000000001dp0z0x1.0000000000001ep0z0X1.0000000000001fp0z0x1.00000000000020p0g�g�g�g�g�g�g�g�g�g�g�g�g�g����r r r r ���r!r!���r"r")
r
r
rrrrr�r�rr�)r r
r
rrZpirrr�
test_from_hexKs





zHexFloatTestCase.test_from_hexcCs�dd�}xLtt|j|j|j|j|jdgD](}|j|||��|j|||��q*Wddl}xntd�D]b}|jdd�}|j�}|j	dd	g�}y|t
||�}Wntk
r�YqhX|j|tt
|���qhWdS)
NcSstt|��S)N)r�toHex)r@rrr�	roundtripisz2HexFloatTestCase.test_roundtrip.<locals>.roundtripgri'i�g�?iP���g�)r�r�r
r
rrr}r|Z	randrangeZchoicerr�rr$)r r%r@r}r��e�mrFrrr�test_roundtriphs&zHexFloatTestCase.test_roundtripcCs�Gdd�dt�}|jdj��}|jt|�|�|j|d�Gdd�dt�}|jdj��}|jt|�|�|j|d�|jt|dd�d	�dS)
Nc@seZdZdd�ZdS)z)HexFloatTestCase.test_subclass.<locals>.FcSstj||d�S)NrB)rrU)rVrWrrrrUsz1HexFloatTestCase.test_subclass.<locals>.F.__new__N)rrrrUrrrrr_~sr_g�?g@c@seZdZdd�ZdS)z*HexFloatTestCase.test_subclass.<locals>.F2cSs
d|_dS)N�bar)�foo)r rWrrr�__init__�sz3HexFloatTestCase.test_subclass.<locals>.F2.__init__N)rrrr+rrrr�F2�sr,r*Znoner))r�fromhex�hexrcr>rr�)r r_r?r,rrr�
test_subclass}szHexFloatTestCase.test_subclassN)rrrrr
r
rrrrrrr#r(r/rrrrr�s
@r�__main__)>rr�r�r}r�r�rbr�r�rZtest.test_grammarrrZmathrrrrrr�r��hasattrZhave_getformatr�Zrequires_getformatZrequires_setformatr��dirnamer��curdirZtest_dirr�r�r
rZTestCaserr�r�r9�reversedr�r�r�r�r�r�r�r�r�r�r�r�r�r�r-rr.r$rr�mainrrrr�<module>sf
g
%
K@
vf8


Youez - 2016 - github.com/yon3zu
LinuXploit