Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.9/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.9/test/__pycache__/test_binop.cpython-39.opt-2.pyc

a

��g�8�@sfddlZddlmZmZmZddlmZdd�Zdd�Zdd	�Z	d
d�Z
Gdd
�d
e�ZGdd�dej
�ZGdd�d�Zdd�ZGdd�de�ZGdd�deed�ZGdd�de�ZGdd�de�Ze�e�Gdd�dej
�ZGdd �d e�ZGd!d"�d"e�ZGd#d$�d$e�ZGd%d&�d&e�ZGd'd(�d(e�ZGd)d*�d*�ZGd+d,�d,ej
�Zed-k�rbe��dS).�N)�eq�le�ne)�ABCMetacCs|r|||}}q|S�N�)�a�brr�+/usr/local/lib/python3.9/test/test_binop.py�gcdsrcCs
t|t�Sr)�
isinstance�int��xrrr
�isint
srcCs$tttfD]}t||�r
dSq
dS)N�r)r
�float�complexr)r�Trrr
�isnums
rcCs
t|t�Sr)r�Ratrrrr
�isRatsrc@s�eZdZddgZd.dd�Zdd�Zeed	�Zd
d�Zeed	�Z	dd
�Z
dd�Zdd�Zdd�Z
dd�ZeZdd�Zdd�Zdd�ZeZdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd	S)/r�	_Rat__num�	_Rat__denrrcCsbt|�std|��t|�s(td|��|dkr8td��t||�}t||�|_t||�|_dS)NzRat numerator must be int (%r)z Rat denominator must be int (%r)rzzero denominator)r�	TypeError�ZeroDivisionErrorrr
rr)�self�num�den�grrr
�__init__"s
zRat.__init__cCs|jSr)r�rrrr
�_get_num1szRat._get_numNcCs|jSr)rr!rrr
�_get_den6szRat._get_dencCsd|j|jfS)NzRat(%d, %d)�rrr!rrr
�__repr__;szRat.__repr__cCstt|��Sr)�strrr!rrr
�__str__?szRat.__str__cCs|jd|jS)N��?r$r!rrr
�	__float__Csz
Rat.__float__cCsN|jdkr:zt|j�WSty8tdt|���Yn0tdt|���dS)Nrz%s too large to convert to intzcan't convert %s to int)rr
r�
OverflowError�repr�
ValueErrorr!rrr
�__int__Gs
�zRat.__int__cCsVt|�rt|�}t|�r>t|j|j|j|j|j|j�St|�rRt|�|StSr�rrrrrrr�NotImplemented�r�otherrrr
�__add__Qs
�zRat.__add__cCsVt|�rt|�}t|�r>t|j|j|j|j|j|j�St|�rRt|�|StSrr.r0rrr
�__sub__^s
�zRat.__sub__cCsVt|�rt|�}t|�r>t|j|j|j|j|j|j�St|�rR|t|�StSrr.r0rrr
�__rsub__is
�zRat.__rsub__cCsTt|�r"t|j|j|j|j�St|�r<t|j||j�St|�rPt|�|StSr�rrrrrrrr/r0rrr
�__mul__tszRat.__mul__cCsTt|�r"t|j|j|j|j�St|�r<t|j|j|�St|�rPt|�|StSrr5r0rrr
�__truediv__�szRat.__truediv__cCsTt|�r"t|j|j|j|j�St|�r<t||j|j�St|�rP|t|�StSrr5r0rrr
�__rtruediv__�szRat.__rtruediv__cCs2t|�rt|�}nt|�stS||}|j|jSr)rrrr/rr�rr1rrrr
�__floordiv__�s
zRat.__floordiv__cCs||}|j|jSrr$r9rrr
�
__rfloordiv__�szRat.__rfloordiv__cCs6t|�rt|�}nt|�stS||}||||fSr)rrrr/r9rrr
�
__divmod__�s
zRat.__divmod__cCs(t|�rt|�}nt|�stSt||�Sr)rrrr/�divmodr0rrr
�__rdivmod__�s

zRat.__rdivmod__cCst||�dS�Nr�r=r0rrr
�__mod__�szRat.__mod__cCst||�dSr?r@r0rrr
�__rmod__�szRat.__rmod__cCsTt|�r|jdko|j|kSt|�r<|j|jko:|j|jkSt|�rPt|�|kStSr?)rrrrrrr/r0rrr
�__eq__�sz
Rat.__eq__)rr)�__name__�
__module__�__qualname__�	__slots__r r"�propertyrr#rr%r'r)r-r2�__radd__r3r4r6�__rmul__r7r8r:r;r<r>rArBrCrrrr
rs2






		rc@sTeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�RatTestCasecCs�|�tdd�d�|�tdd�d�|�tdd�d�|�tdd�d�|�td	d�d
�|�tdd
�d�|�td	d
�d
�tdd�D]l}tdd�D]\}|�t||�dk�|�t||�dk�|�t||�dk�|�t||�dk�q�q�dS)
N�
�����r�d�������r)�assertEqualr�range�
assertTrue)r�i�jrrr
�test_gcd�szRatTestCase.test_gcdc	Csjtdd�}|�|jd�|�|jd�tdd�}|�|jd�|�|jd�tdd�}|�|jd�|�|jd�tdd�}|�|jd�|�|jd�td�}|�|jd�|�|jd	�ztd	d
�}Wnty�Yn0|�d�dd
ddgidttf	D]f}zt|�}Wnt�y"Yn0|�d|�ztd	|�}Wnt�yTYq�0|�d|�q�dS)NrLrOrN�i�rTrS�rrz(Rat(1, 0) didn't raise ZeroDivisionError�0gyrzRat(%r) didn't raise TypeErrorz!Rat(1, %r) didn't raise TypeError)rrVrrrZfail�unittestr)rrZbadrrr
�test_constructor�s>




zRatTestCase.test_constructorcCs�|�tdd�tdd�d�|�tdd�dtdd��|�dtdd�tdd��|�dtdd�d�|�tdd�dd�dS)NrNr\rrPr(��?�rVrr!rrr
�test_add�s
zRatTestCase.test_addcCs�|�tdd�tdd�tdd��|�tdd�dtdd��|�dtdd�tdd��|�tdd�dd	�|�dtdd�d	�dS)
Nr]rNrP�rLrr\r(��?rbr!rrr
�test_subs
"zRatTestCase.test_subcCs~|�tdd�tdd�tdd��|�tdd�dd�|�dtdd�d�|�tdd�dd�|�dtdd�d�dS)	NrNr\rPr]rLrdrer(rbr!rrr
�test_mul	s
"zRatTestCase.test_mulcCs�|�tdd�tdd�tdd��|�tdd�dtdd��|�dtd�tdd��|�dtd	d�d
�|�td	d�dd
�dS)NrLr\rPr]��	rN�@rrarbr!rrr
�test_divs
"zRatTestCase.test_divcCs`|�td�td�d�|�tdd�tdd�d�|�td�dd�|�dtd�d�dS)NrL�rNr\rbr!rrr
�
test_floordivszRatTestCase.test_floordivcCsZ|�td�tdd��|�td�d�|�dtd��|�td�d�|�dtd��dS)NrLrUrNg$@rbr!rrr
�test_eqs
zRatTestCase.test_eqcCs�|�tdd�tdd�tdd��|�tdd�dtdd��|�dtd�tdd��|�dtd	d�d
�|�td	d�dd
�|�td�d�dS)
NrLr\rPr]rhrirNrjrraz1/2re)rVr�evalr!rrr
�
test_true_div$s"zRatTestCase.test_true_divN)rDrErFr[r`rcrfrgrkrmrnrprrrr
rK�s$rKc@seZdZdd�Zdd�ZdS)�OperationLoggercCs
||_dSr��logger)rrsrrr
r 1szOperationLogger.__init__cGs|j|�dSrrr)r�argsrrr
�
log_operation3szOperationLogger.log_operationN)rDrErFr rurrrr
rq/srqcGsFg}g}|D]}|�||j��qz||�Wnty@Yn0|Sr)�appendr)�op�classes�logZ	instances�crrr
�op_sequence6sr{c@s$eZdZdd�Zdd�Zdd�ZdS)�AcCs|�d�tS)N�A.__eq__�rur/r0rrr
rCEs
r}cCs|�d�tS)N�A.__le__r~r0rrr
�__le__Hs
rcCs|�d�tS)N�A.__ge__r~r0rrr
�__ge__Ks
r�N�rDrErFrCr�r�rrrr
r|Dsr|c@s$eZdZdd�Zdd�Zdd�ZdS)�BcCs|�d�tS)N�B.__eq__r~r0rrr
rCPs
r�cCs|�d�tS)N�B.__le__r~r0rrr
r�Ss
r�cCs|�d�tS)N�B.__ge__r~r0rrr
r�Vs
r�Nr�rrrr
r�Osr�)�	metaclassc@s$eZdZdd�Zdd�Zdd�ZdS)�CcCs|�d�tS)N�C.__eq__r~r0rrr
rC[s
r�cCs|�d�tS)N�C.__le__r~r0rrr
r�^s
r�cCs|�d�tS)N�C.__ge__r~r0rrr
r�as
r�Nr�rrrr
r�Zsr�c@s$eZdZdd�Zdd�Zdd�ZdS)�VcCs|�d�tS)N�V.__eq__r~r0rrr
rCgs
r�cCs|�d�tS)N�V.__le__r~r0rrr
r�js
r�cCs|�d�tS)N�V.__ge__r~r0rrr
r�ms
r�Nr�rrrr
r�esr�c@seZdZdd�ZdS)�OperationOrderTestscCs4|�tttt�ddg�|�tttt�ddg�|�tttt�ddg�|�tttt�ddg�|�tttt�ddg�|�tttt�ddg�|�tttt�ddg�|�tttt�ddg�|�tttt�ddg�|�tttt�d	dg�|�tt	t��|�tttt	�dd
g�|�tttt	�ddg�dS)Nr}r�r�rr�r�r�r�r�r�r�)
rVr{rr|r�r�rrX�
issubclassr�r!rrr
�test_comparison_orderstsz*OperationOrderTests.test_comparison_ordersN)rDrErFr�rrrr
r�ssr�c@seZdZdd�ZdS)�SupEqcCsdS�NTrr0rrr
rC�szSupEq.__eq__N�rDrErFrCrrrr
r��sr�c@seZdZdZdS)�SNr�rrrr
r��sr�c@seZdZdS)�FN)rDrErFrrrr
r��sr�c@seZdZdZdS)�XNr�rrrr
r��sr�c@seZdZdZdS)�SNN)rDrErF�__ne__rrrr
r��sr�c@seZdZdd�ZdZdS)�XNcCsdSr�rr0rrr
rC�sz	XN.__eq__N)rDrErFrCr�rrrr
r��sr�c@seZdZdd�Zdd�ZdS)�FallbackBlockingTestscCs�t�t�t�t�f\}}}}|�||�|�||�|�||�|�||�|�tt||�|�tt||�|�tt||�dSr)r�r�r�r�rV�assertRaisesrr)r�e�f�srrrr
�test_fallback_rmethod_blocking�sz4FallbackBlockingTests.test_fallback_rmethod_blockingcCsft�t�t�}}}|�||k�|�tt||�|�tt||�|�||k�|�tt||�dSr)r�r�r�ZassertFalser�rr)rr�ZsnZxnrrr
�test_fallback_ne_blocking�sz/FallbackBlockingTests.test_fallback_ne_blockingN)rDrErFr�r�rrrr
r��sr��__main__) r_�operatorrrr�abcrrrrr�objectrZTestCaserKrqr{r|r�r�r��registerr�r�r�r�r�r�r�r�rD�mainrrrr
�<module>s4*j



Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists