HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //proc/thread-self/root/usr/local/lib/python3.7/test/__pycache__/test_binop.cpython-37.opt-2.pyc
B

��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)�ABCMetacCsx|r|||}}qW|S)N�)�a�brr�+/usr/local/lib/python3.7/test/test_binop.py�gcdsr
cCs
t|t�S)N)�
isinstance�int)�xrrr	�isint
srcCs&x tttfD]}t||�rdSqWdS)N�r)r�float�complexr)r
�Trrr	�isnums
rcCs
t|t�S)N)r�Rat)r
rrr	�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�ZeroDivisionErrorr
rrr)�self�num�den�grrr	�__init__"s
zRat.__init__cCs|jS)N)r)rrrr	�_get_num1szRat._get_numNcCs|jS)N)r)rrrr	�_get_den6szRat._get_dencCsd|j|jfS)NzRat(%d, %d))rr)rrrr	�__repr__;szRat.__repr__cCstt|��S)N)�strr)rrrr	�__str__?szRat.__str__cCs|jd|jS)Ng�?)rr)rrrr	�	__float__Csz
Rat.__float__cCsN|jdkr:y
t|j�Stk
r8tdt|���YnXtdt|���dS)Nrz%s too large to convert to intzcan't convert %s to int)rrr�
OverflowError�repr�
ValueError)rrrr	�__int__Gs

zRat.__int__cCsVt|�rt|�}t|�r>t|j|j|j|j|j|j�St|�rRt|�|StS)N)rrrrrrr�NotImplemented)r�otherrrr	�__add__QszRat.__add__cCsVt|�rt|�}t|�r>t|j|j|j|j|j|j�St|�rRt|�|StS)N)rrrrrrrr))rr*rrr	�__sub__^szRat.__sub__cCsVt|�rt|�}t|�r>t|j|j|j|j|j|j�St|�rR|t|�StS)N)rrrrrrrr))rr*rrr	�__rsub__iszRat.__rsub__cCsTt|�r"t|j|j|j|j�St|�r<t|j||j�St|�rPt|�|StS)N)rrrrrrrr))rr*rrr	�__mul__tszRat.__mul__cCsTt|�r"t|j|j|j|j�St|�r<t|j|j|�St|�rPt|�|StS)N)rrrrrrrr))rr*rrr	�__truediv__�szRat.__truediv__cCsTt|�r"t|j|j|j|j�St|�r<t||j|j�St|�rP|t|�StS)N)rrrrrrrr))rr*rrr	�__rtruediv__�szRat.__rtruediv__cCs2t|�rt|�}nt|�stS||}|j|jS)N)rrrr)rr)rr*r
rrr	�__floordiv__�s
zRat.__floordiv__cCs||}|j|jS)N)rr)rr*r
rrr	�
__rfloordiv__�szRat.__rfloordiv__cCs6t|�rt|�}nt|�stS||}||||fS)N)rrrr))rr*r
rrr	�
__divmod__�s
zRat.__divmod__cCs(t|�rt|�}nt|�stSt||�S)N)rrrr)�divmod)rr*rrr	�__rdivmod__�s

zRat.__rdivmod__cCst||�dS)Nr)r4)rr*rrr	�__mod__�szRat.__mod__cCst||�dS)Nr)r4)rr*rrr	�__rmod__�szRat.__rmod__cCsTt|�r|jdko|j|kSt|�r<|j|jko:|j|jkSt|�rPt|�|kStS)Nr)rrrrrrr))rr*rrr	�__eq__�sz
Rat.__eq__)rr)�__name__�
__module__�__qualname__�	__slots__rr�propertyrr rr!r#r$r(r+�__radd__r,r-r.�__rmul__r/r0r1r2r3r5r6r7r8rrrr	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
�x~tdd�D]p}xjtdd�D]\}|�t||�dk�|�t||�dk�|�t||�dk�|�t||�dk�q�Wq�WdS)
N�
�����r�di��������r)�assertEqualr
�range�
assertTrue)r�i�jrrr	�test_gcd�szRatTestCase.test_gcdc	Csvtdd�}|�|jd�|�|jd�tdd�}|�|jd�|�|jd�tdd�}|�|jd�|�|jd�tdd�}|�|jd�|�|jd�td�}|�|jd�|�|jd	�ytd	d
�}Wntk
r�YnX|�d�x�dd
ddgidttf	D]l}yt|�}Wntk
�r(YnX|�d|�ytd	|�}Wntk
�r\YnX|�d|��qWdS)NrArDrC�i�rHi�����rrz(Rat(1, 0) didn't raise ZeroDivisionError�0gyrzRat(%r) didn't raise TypeErrorz!Rat(1, %r) didn't raise TypeError)rrJrrrZfail�unittestr)rrZbadrrr	�test_constructor�s>




zRatTestCase.test_constructorcCs�|�tdd�tdd�d�|�tdd�dtdd��|�dtdd�tdd��|�dtdd�d�|�tdd�dd�dS)NrCrPrrEg�?g�?)rJr)rrrr	�test_add�s
zRatTestCase.test_addcCs�|�tdd�tdd�tdd��|�tdd�dtdd��|�dtdd�tdd��|�tdd�dd	�|�dtdd�d	�dS)
NrQrCrE�rArrPg�?g�?)rJr)rrrr	�test_subs
"zRatTestCase.test_subcCs~|�tdd�tdd�tdd��|�tdd�dd�|�dtdd�d�|�tdd�dd�|�dtdd�d�dS)	NrCrPrErQrArVg�?g�?)rJr)rrrr	�test_mul	s
"zRatTestCase.test_mulcCs�|�tdd�tdd�tdd��|�tdd�dtdd��|�dtd�tdd��|�dtd	d�d
�|�td	d�dd
�dS)NrArPrErQ��	rCg@rg�?)rJr)rrrr	�test_divs
"zRatTestCase.test_divcCs`|�td�td�d�|�tdd�tdd�d�|�td�dd�|�dtd�d�dS)NrA�rCrP)rJr)rrrr	�
test_floordivszRatTestCase.test_floordivcCsZ|�td�tdd��|�td�d�|�dtd��|�td�d�|�dtd��dS)NrArIrCg$@)rJr)rrrr	�test_eqs
zRatTestCase.test_eqcCs�|�tdd�tdd�tdd��|�tdd�dtdd��|�dtd�tdd��|�dtd	d�d
�|�td	d�dd
�|�td�d�dS)
NrArPrErQrYrZrCg@rg�?z1/2g�?)rJr�eval)rrrr	�
test_true_div$s"zRatTestCase.test_true_divN)r9r:r;rOrTrUrWrXr[r]r^r`rrrr	r@�s$r@c@seZdZdd�Zdd�ZdS)�OperationLoggercCs
||_dS)N)�logger)rrbrrr	r1szOperationLogger.__init__cGs|j|�dS)N)rb)r�argsrrr	�
log_operation3szOperationLogger.log_operationN)r9r:r;rrdrrrr	ra/sracGsLg}g}x|D]}|�||j��qWy||�Wntk
rFYnX|S)N)�appendr)�op�classes�logZ	instances�crrr	�op_sequence6s
rjc@s$eZdZdd�Zdd�Zdd�ZdS)�AcCs|�d�tS)NzA.__eq__)rdr))rr*rrr	r8Es
zA.__eq__cCs|�d�tS)NzA.__le__)rdr))rr*rrr	�__le__Hs
zA.__le__cCs|�d�tS)NzA.__ge__)rdr))rr*rrr	�__ge__Ks
zA.__ge__N)r9r:r;r8rlrmrrrr	rkDsrkc@s$eZdZdd�Zdd�Zdd�ZdS)�BcCs|�d�tS)NzB.__eq__)rdr))rr*rrr	r8Ps
zB.__eq__cCs|�d�tS)NzB.__le__)rdr))rr*rrr	rlSs
zB.__le__cCs|�d�tS)NzB.__ge__)rdr))rr*rrr	rmVs
zB.__ge__N)r9r:r;r8rlrmrrrr	rnOsrn)�	metaclassc@s$eZdZdd�Zdd�Zdd�ZdS)�CcCs|�d�tS)NzC.__eq__)rdr))rr*rrr	r8[s
zC.__eq__cCs|�d�tS)NzC.__le__)rdr))rr*rrr	rl^s
zC.__le__cCs|�d�tS)NzC.__ge__)rdr))rr*rrr	rmas
zC.__ge__N)r9r:r;r8rlrmrrrr	rpZsrpc@s$eZdZdd�Zdd�Zdd�ZdS)�VcCs|�d�tS)NzV.__eq__)rdr))rr*rrr	r8gs
zV.__eq__cCs|�d�tS)NzV.__le__)rdr))rr*rrr	rljs
zV.__le__cCs|�d�tS)NzV.__ge__)rdr))rr*rrr	rmms
zV.__ge__N)r9r:r;r8rlrmrrrr	rqesrqc@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)NzA.__eq__zB.__eq__zC.__eq__zA.__le__zA.__ge__zB.__ge__zB.__le__zC.__ge__zC.__le__zV.__eq__zV.__ge__)
rJrjrrkrnrprrL�
issubclassrq)rrrr	�test_comparison_orderstsz*OperationOrderTests.test_comparison_ordersN)r9r:r;rtrrrr	rrssrrc@seZdZdd�ZdS)�SupEqcCsdS)NTr)rr*rrr	r8�szSupEq.__eq__N)r9r:r;r8rrrr	ru�sruc@seZdZdZdS)�SN)r9r:r;r8rrrr	rv�srvc@seZdZdS)�FN)r9r:r;rrrr	rw�srwc@seZdZdZdS)�XN)r9r:r;r8rrrr	rx�srxc@seZdZdZdS)�SNN)r9r:r;�__ne__rrrr	ry�sryc@seZdZdd�ZdZdS)�XNcCsdS)NTr)rr*rrr	r8�sz	XN.__eq__N)r9r:r;r8rzrrrr	r{�sr{c@seZdZdd�Zdd�ZdS)�FallbackBlockingTestscCs�t�t�t�t�f\}}}}|�||�|�||�|�||�|�||�|�tt||�|�tt||�|�tt||�dS)N)rurwrvrxrJ�assertRaisesrr)r�e�f�sr
rrr	�test_fallback_rmethod_blocking�sz4FallbackBlockingTests.test_fallback_rmethod_blockingcCsft�t�t�}}}|�||k�|�tt||�|�tt||�|�||k�|�tt||�dS)N)ruryr{ZassertFalser}rr)rr~ZsnZxnrrr	�test_fallback_ne_blocking�sz/FallbackBlockingTests.test_fallback_ne_blockingN)r9r:r;r�r�rrrr	r|�sr|�__main__) rS�operatorrrr�abcrr
rrr�objectrZTestCaser@rarjrkrnrprq�registerrrrurvrwrxryr{r|r9�mainrrrr	�<module>s4*j