Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 3.149.235.138
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : test_fractions.pyc
�
?��cc@ssdZddlmZddlmZddlZddlZddlZddlZddl	Z	ddl
Z
ddlmZmZddl
mZmZejZejZe
jejd�jd�d	�Zd
efd��YZdefd
��YZdejfd��YZde
jfd��YZd�Zde
jfd��YZd�Z e!dkroe �ndS(sTests for Lib/fractions.py.i����(tDecimal(trun_unittestN(tcopytdeepcopy(tdumpstloadstdoubletIEEEstest requires IEEE 754 doublest
DummyFloatcBskeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�ZeZd
ZRS(s8Dummy float class for testing comparisons with FractionscCs+t|t�std��n||_dS(Ns-DummyFloat can only be initialized from float(t
isinstancetfloatt	TypeErrortvalue(tselfR((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt__init__scCsUt|tj�r+|tj|j�|�St|t�rM||j|j�StSdS(N(R	tnumberstRationaltFt
from_floatRRtNotImplemented(R
tothertop((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt_richcmps
cCs|j|tj�S(N(Rtoperatorteq(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt__eq__%tcCs|j|tj�S(N(RRtle(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt__le__&RcCs|j|tj�S(N(RRtlt(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt__lt__'RcCs|j|tj�S(N(RRtge(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt__ge__(RcCs|j|tj�S(N(RRtgt(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt__gt__)RcCststd��dS(Ns/__float__ should not be invoked for comparisons(tFalsetAssertionError(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt	__float__,scCststd��dS(Ns-__sub__ should not be invoked for comparisons(R#R$(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt__sub__0sN(t__name__t
__module__t__doc__RRRRRR R"R%R&t__rsub__tNonet__hash__(((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyRs									t
DummyRationalcBsSeZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	dZRS(	sATest comparison of Fraction with a naive rational implementation.cCs-t||�}|||_|||_dS(N(tgcdtnumtden(R
R/R0tg((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyR;s
cCs<t|tj�r4|j|jko3|j|jkStSdS(N(R	t	fractionstFractionR/t
_numeratorR0t_denominatorR(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyR@scCs|j|j|j|jkS(N(R/R5R0R4(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyRGscCs|j|j|j|jkS(N(R/R5R0R4(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyR"JscCs|j|j|j|jkS(N(R/R5R0R4(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyRMscCs|j|j|j|jkS(N(R/R5R0R4(R
R((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyR PscCststd��dS(Ns__float__ should not be invoked(R#R$(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyR%UsN(R'R(R)RRRR"RR R%R+R,(((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyR-8s							t
DummyFractioncBseZdZRS(s6Dummy Fraction subclass for copy and deepcopy testing.(R'R(R)(((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyR6\stGcdTestcBseZd�ZRS(cCs�|jdtdd��|jdtdd��|jdtdd��|jdtdd��|jdtdd��|jdtdd��|jdtdd��|jdtdd��|jdtdd	��|jd
td	d��dS(Niii����ii��iiixiTi�i����(tassertEqualR.(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestMiscas(R'R(R9(((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyR7_scCs|j|jfS(N(t	numeratortdenominator(tr((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt_componentsnstFractionTestcBs
eZd�Zd�Zd�Zed��Zd�Zd�Zd�Z	d�Z
d�Zd	�Zd
�Z
d�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs0|jt|�t|��|j||�dS(s4Asserts that both the types and values are the same.N(R8ttype(R
texpectedtactual((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pytassertTypedEqualstscOsUy|||�Wn)|k
r<}|j|t|��nX|jd|j�dS(s@Asserts that callable(*args, **kwargs) raises exc_type(message).s
%s not raisedN(R8tstrtfailR'(R
texc_typetmessagetcallabletargstkwargste((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pytassertRaisesMessageys
cCs|jdtt���|jdttd���|jdtttdd����|jd ttdd���|jd!ttdd���|jd"ttdd���|jd#ttdd	���|jd$ttdd
���|jd&ttd'���|jd(tttdd�d
���|jd)ttdtdd����|jd*tttdd�tdd����|jtdtdd�|jttd+�|jttdd�|jttdd�|jttdd�dS(,Niiiii����i����iii
iiiMii����i����i	i�	i�	iiciqsFraction(12, 0)ig�?y@s3/2yy�?(ii(ii(ii(i����i(i����i(ii(ii(iilm+?�R(lm+?�Rilm+?�R(iiM(i����i(i�	i�	y�?@(R8R=RRKtZeroDivisionErrortassertRaisesR(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestInit�s$%((1
cCs�|jd
ttd���|jdttd���|jdttd	���|jtttd
��|jtttd��|jtttd��dS(Niig@iig�I������I�g�������?tnantinfs-inf(ii(ii(I������I�(R8R=RRMRR
(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestInitFromFloat�s	cCs�|jdtttd����|jdtttd����|jdtttd	����|jtttd
��|jtttd��|jtttd��|jtttd
��dS(Nii
s1.1ii�s3.5e-2iis.000e20ROtsnanRPs-inf(ii
(ii�(ii(R8R=RRRMR(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestInitFromDecimal�s			cCs�|jd0ttd���|jd1ttd���|jd2ttd���|jd3ttd	���|jd4ttd���|jd5ttd���|jd6ttd���|jd7ttd���|jd8ttd���|jd9ttd���|jd:ttd���|jd;ttd���|jd<ttd���|jd=ttd���|jd>ttd���|jtdtd�|jtdtd�|jtd td!�|jtd"td#�|jtd$td%�|jtd&td'�|jtd(td)�|jtd*td+�|jtd,td-�|jtd.td/�dS(?Niit5iis3/2s 
  +3/2i����s-3/2  i
s    013/02 
  u    013/02 
  is 3.2 i�u -3.2 u -3. u .6 i5s32.e-5i@Bs1E+06i���s-1.23e4is .0e+0	s-0.000e0sFraction(3, 0)s3/0s"Invalid literal for Fraction: '3/'s3/s"Invalid literal for Fraction: '/2's/2s$Invalid literal for Fraction: '3 /2's3 /2s$Invalid literal for Fraction: '3/+2's3/+2s%Invalid literal for Fraction: '+ 3/2's+ 3/2s#Invalid literal for Fraction: '3a2't3a2s%Invalid literal for Fraction: '3/7.2's3/7.2s%Invalid literal for Fraction: '3.2/7's3.2/7s!Invalid literal for Fraction: '.'t.(ii(ii(ii(i����i(i
i(i
i(ii(i�i(i����i(ii(ii5(i@Bi(i���i(ii(ii(R8R=RRKRLt
ValueError(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestFromString�sZ








cCs�tdd�}|jdd�|jd
t|��|jtt|dd�|jtt|dd�|jdt|��d	|_d|_|jdt|��|j	td	d�|�dS(
NiiiiR:iR;ii(ii(ii(ii(
RRR8R=RMtAttributeErrortsetattrR4R5tassertNotEqual(R
R<((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt
testImmutable�s		cCs�|jttjd�|jdttjd���d}|j|dfttj|���|jdttjd���|jdttjd���|jdttjd���|jdttjd
���|jtd�ttjd
���|jdttjd���|jdttjd���d}||}|jtdtj|�|jtdtj|�|jtdtj|�dS(Niy@i
iI��}�"ig�g$@i����ig�ll+?�Rg�J��-�DiI������Ig������	@g�sCannot convert inf to Fraction.s Cannot convert -inf to Fraction.sCannot convert nan to Fraction.y@@(i
i(ii(i
i(i����i(ll+?�Rilm+?�R(I������I(RMRRRR8R=R
RK(R
tbigintRPRO((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt
testFromFloat�s0%	%	

cCs�|jttjd�|jtdd�tjd��|jtd�tjtd���|jtdd�tjtd���|jtdd	�tjtd
���|jtd�tjtd���|jdtdd�tjtddd
���|jtdtjtd��|jtdtjtd��|jtdtjtd��|jtdtjtd��dS(Niy@i
iis-0is0.5i�s5e-3i�t5e3is0.t9s$Cannot convert Infinity to Fraction.RPs%Cannot convert -Infinity to Fraction.s-infsCannot convert NaN to Fraction.ROs Cannot convert sNaN to Fraction.RRy@@l�7�3M�e'(RMRRtfrom_decimalR8RRK(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestFromDecimals("%((%cCsAtd�}|j|jd�tdd��|j|jd�tdd��|j|jd�tdd��|j|jd�tdd��|jtd	d
�jd�td��|jtd	d
�jd
�tdd
��|jtd�jd�td��x-dD]%}|jtdtd�j|�qWdS(Ns3.1415926535897932i'iciqi����ipiMiji�i�idiieifii����s$max_denominator should be at least 1(ii����(RR8tlimit_denominatorRKRW(R
trpiti((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestLimitDenominator+s"#""(+%
cCsC|jdtjtdd���|jdttdd���|jdtjtdd���|jtttdd���|jtttdd���|jd	t	tdd���|j
tt	td
dd��|j
d
dt	ttd
dd�tddd����|jdttdd���dS(Ni����i����i
iiiiig�������?t2i�t7g@t3t1yy�������?(RBtmathttruncRtintR8R#tbooltTrueR
RMt
OverflowErrortlongtassertAlmostEqualtcomplex(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestConversions9s""!
2cCs�|jtdd�tdd�tdd��|jtdd�tdd�tdd��|jtdd�tdd�tdd��|jtdd�tdd�tdd��|jdtdd�tdd��|jdtdd�td��|jtdd
�tdd
�td
d��|jtdd
�tdd
�td
��|jtd
d�tdd
�td��|jdtd�tdd��|jtdd�tdd�
�|jtttd�tdd��dS(Niii
ii����iii	iii����iig@i����lm+?�Rlm+?�R(R8RRBRMRWtpow(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestArithmeticJs////&#/,,##cCsZ|jtdd�tdd�d�|jdtdd�d�|jdtdd�d�|jtdd�dtdd��|jddtdd��|jddtdd��|jtdd�tdd�d�|jdtdd�d�|jdtdd�d�|jtd	d�dtdd��|jd
dtdd��|jddtdd��|jtdd�tdd�d�|jdtdd�d�|jd tdd�d!�|jtdd�dtdd��|jddtdd��|jd"d#tdd��|jtdd�tdd�d�|jdtdd�d�|jd$tdd�d%�|jtdd�dtdd��|jddtdd��|jd&d'tdd��|jd
tdd�d�|jdtdd�d�|jddtdd��|jd(d)tdd��|jddtdd��|jtdd�tdd�d�|jdtdd�d�|jtd
d�dtdd��|jddtdd��|jtdd�tdd�d�|jtdd�tdd�d�|jdtdd�d�|jd*tdd�d+�|jddtdd��|jttdtdd��|jtdd�dtdd��|jddtdd��|jddtdd��|jd,d-tdd��dS(.Nii
ig�������?g�?yi����g�������i	g�������?g�������?g$@igiiidi����iii����g@g�?y�������?y�?y�������?y�?y�������y�?y�������?y�?y�������?y�?y�������?y�?y�������?y�?y$@y�?lm+?�Rl�d�&O�!y�������?y�?y�?y�?(RBRRMRWRu(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestMixedArithmeticYsV&&&&&&&&&&&&&cCsy|jtdtjtdd�td��|jtdtjtd�tdd��|jtdd�td��dS(	Ns;unsupported operand type(s) for +: 'Fraction' and 'Decimal'iis	3.1415926s;unsupported operand type(s) for +: 'Decimal' and 'Fraction'iis2.5(RKRRtaddRRR[(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestMixingWithDecimal�scCsQ|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�dS(Niii(t
assertTrueRtassertFalse(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestComparisons�s%%%%%%%%cCs|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�|jtdd�tdd�k�dS(Niiiii(RzRR-R{(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestComparisonsDummyRational�s8%%%%%%%%%%%%%%%%%%%%%%%%%%%cCs�tdd�}tdd�}|j||k�|j||kpM||k�|j||k�|j||ko||k�|j||k�|j||kp�||k�|j||k�|j||ko�||k�dS(Ng�?g@ii(RRRzR{(R
txty((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestComparisonsDummyFloat�scCs�|jdtdd�k�|jdtdd�k�|jtdd�dk�|jtdd�dk�|jtdd�dk�|jtdd�dk�|jdtdd�k�|jdtdd�k�|jtd	�tdd�k�|jtd
�tdd�k�|jtd
�tdd�k�|jtdd�td	�k�|jtdd�td
�k�|jtdd�td
�k�dS(Niiiiig333333�?g�������?g�?RPs-infii
ROi����iiii�i����(RzRR{R
(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt
testMixedLess�s"""""cCs�|jdtdd�k�|jdtdd�k�|jtdd�dk�|jtdd�dk�|jdtdd�k�|jdtdd�k�|jtdd�dk�|jtdd�dk�|jtd	�tdd�k�|jtd
�tdd�k�|jtd
�tdd�k�|jtdd�td	�k�|jtdd�td
�k�|jtdd�td
�k�dS(Ng�?iig333333�?g�������?iiiRPs-infii
ROi����iiii�i����(RzRR{R
(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestMixedLessEqual�s"""""cCs�|jtd�td�k�|jdtttjd�d��k�|jdttjd�d�k�|jdttjd�d�k�|jdttjd�d�k�|jdttjd�d�k�dS(Ni
ig�J��-�Dilm+?�Rlm+?�R(R{RR
RkRlRz(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestBigFloatComparisons�s,&&&cCsg|jtd�td	�k�|jttjtd
�td��|jttjtd�td
��tdd�}tdd�}tdd�}|j||k�|j||k�|j||k�|j||k�x~tj	tjtjtj
fD]^}|jt|||�|jt|||�|jt|||�|jt|||�qWdS(Ni
iiig�?gg�������?lm+?�Rlm+?�Rlm+?�Rlm+?�Rlm+?�Rlm+?�R(R{RRsRMRRR!RRzRR(R
R~tztwR((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestBigComplexComparisonss%%%cCsl|jdtdd�k�|jdtdd�k�|jtdd�dk�|jtdd�dk�|jdtdd�k�|jdtdd�k�|jtdd�dk�|jtdd�dk�|jtdd�td	�k�|jtd	�tdd
�k�|jtdd�td�k�|jtd�tdd�k�dS(
Ng�?iig333333�?g�������?iiiROiRPs-inf(RzRR{R
(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestMixedEquals"""cCs�|jdttdd���|jdttd���|jdttdd
���|jd
ttdd���|jdttdd���dS(NsFraction(7, 3)iis Fraction(6283185307, 2000000000)s3.1415926535s#Fraction(-1, 100000000000000000000)ii
is7/3Rhl F�x:^Vl���� F�x:^V(R8treprRRC(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestStringification s		cCss|jtd�ttdd���|jtd�ttd���|jttd	��ttd
���dS(Ng@iii
i2il +�O��tC3�y+v�l +�O��tC3�y+v�lm+?�Rlm+?�R(R8thashRR[R
(R
((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestHash)s%"c	Cs�td�}d|dddddf\}}}}}}}xkt||�tdd	�kr�|}|||d}}|||d}}|||}||7}q?W|jtj|�dS(
Niiiii
i	ii iʚ;(RtabsRrRktpi(	R
tthreetlaststttstntnatdtda((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestApproximatePi.s0"cCs�td�}ddtd�dddf\}}}}}}xot||�tdd�kr�|}|d7}|||d9}|||9}|d9}||||7}q?W|jtjd�|�dS(Niii
i	ii����iʚ;(RR�RrRktcos(R
R~ReR�R�tfactR/tsign((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttestApproximateCos1;s0"

cCs�tdd�}tdd�}|j|tt|���|jt|�tt|���|jt|�tt|���|jt|�tt|���|jt|�tt|���|j	|t|��|j	|t|��dS(Ni
i(
RR6R8RRtidRRR[RB(R
R<tdr((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyttest_copy_deepcopy_pickleIs""""cCs,tdd�}|jtt|dd�dS(Ni
itai
(RRMRYRZ(R
R<((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt
test_slotsTs(R'R(RBRKRNtrequires_IEEE_754RQRSRXR\R^RbRfRtRvRwRyR|R}R�R�R�R�R�R�R�R�R�R�R�R�(((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyR>rs8		
	
		8							7			 				
						
		cCsttt�dS(N(RR>R7(((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt	test_mainYst__main__("R)tdecimalRttest.test_supportRRkRRR2tsystunittestRRtcPickleRRR3RR.t
skipUnlessR
t
__getformat__t
startswithR�tobjectRR-R6tTestCaseR7R=R>R�R'(((s:/usr/local/python-2.7/lib/python2.7/test/test_fractions.pyt<module>s2			#$	��	
© 2025 GrazzMean