tzh
2024-08-22 c7d0944258c7d0943aa7b2211498fd612971ce27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Q\¬Qc@ sddlmZddlZddlZddlZddlZddlmZeje    j
dƒj dƒdƒZ ej jZej jZej jZej jZdedeedZd    „Zd
ejfd „ƒYZd „Zed krÿeƒndS(iÿÿÿÿ(tdivisionN(t run_unittesttdoubletIEEEstest requires IEEE 754 doublesiicC su||Adk}t|ƒt|ƒ}}|s>tdƒ‚n|t|kr]tdƒ‚n|jƒ|jƒ}|dkr“|d||ks´|dkrÁ|d| |krÁ|d7}nt|tƒt}|t| dƒ>|t|dƒ>}}t||ƒ\}}d||ksAd||krN|ddkrN|d7}nt    j
t |ƒ|ƒ}|rq| S|S(s-Correctly-rounded true division for integers.isdivision by zeros)int/int too large to represent as a floatii( tabstZeroDivisionErrortDBL_MIN_OVERFLOWt OverflowErrort
bit_lengthtmaxt DBL_MIN_EXPt DBL_MANT_DIGtdivmodtmathtldexptfloat(tatbtnegativetdtexptqtrtresult((s]/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_long_future.pyttruedivs A (0 tTrueDivisionTestscB s,eZd„Zed„Zed„ƒZRS(cC sOd!}| }|j||dƒ|j||dƒ|j||dƒ|j||dƒ|jd|dƒ|jd|dƒ|jd|dƒ|jd|dƒ|jd||d?|dƒ|jd||d?|dƒ|jd||d?|d    ƒ|jd||d?|d    ƒ|j||d>d
ƒ|jd ||d ƒi|d 6|d 6}xIddddddddgD])}|jtƒt||ƒWdQXqWxKddddddgD]1}t||ƒ}|j|ddj|ƒƒqÖWx=dddd gD])}|jtƒt||ƒWdQXqWdS("Nli@œgð?gð¿igišgԄ@gԄÀgà?i@Bthugetmhuges float(huge)s float(mhuge)shuge / 1s    huge / 2Ls    huge / -1s
huge / -2Ls mhuge / 100s mhuge / 100Ls1 / huges    2L / huges    -1 / huges
-2L / huges 100 / mhuges 100L / mhuges!expected underflow to 0 from {!r}shuge / 0s    huge / 0Ls    mhuge / 0s
mhuge / 0Llk
(t assertEqualt assertRaisesRtevaltformatR(tselfRRt    namespacetoverflowt    underflowRtzero((s]/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_long_future.pyttest6s<         c    C sþt|ƒt|ƒ}}|rHtt|ƒt|ƒƒdtkrHdSytt||ƒƒ}Wn-tk
rzd}ntk
rd}nXyt||ƒ}Wn-tk
r¾d}ntk
rÔd}nX|j||dj    ||||ƒƒdS(sªVerify that the result of a/b is correctly rounded, by
        comparing it with a pure Python implementation of correctly
        rounded division.  b should be nonzero.iNR"t zerodivisions7Incorrectly rounded division {}/{}: expected {}, got {}(
tlongR    RR treprRRRRR(R RRt
skip_smalltexpectedtgot((s]/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_long_future.pyt check_truediv\s"+      
      
cC sƒ|jddƒ|jddƒ|jddƒ|jddƒ|jddƒ|jd+dtdƒ|jdd    dttƒ|jdd,d ƒ|jdd-d d.ƒdtttttf}x–|D]Ž}x…t|d|dƒD]l}|jddt|dƒddt| dƒƒ|jddt|dƒddt| dƒƒqîWqÐWx}ddd ddd/dddddd1g D]Q}xHtddƒD]7}|j|t||ƒ|j|t|| ƒq£WqWxDtdƒD]6}|jdtddd2d|dtdƒqïW|jddƒ|jd d!ƒxLtd"ƒD]>}|jd|dd|ƒ|jd|d|dƒqVWxtddd#d d$d%dd&dd3dddddd5gD]<}x3tddƒD]"}|jdt|||ƒqåWqÏWx'td'd(ƒD]}|j|d6ƒqWxžd7d8d9gD]}x„td"ƒD]v}tjd|ƒ}tj|d|dƒ}    |j||    ƒ|j| |    ƒ|j||     ƒ|j| |     ƒq\WqIWx¢td*ƒD]”}
tjd"ƒ} tjdd"ƒ} tjd| ƒ} tjdd| ƒ}|j| |ƒ|j| | ƒ|j| |ƒ|j| | ƒqçWdS(:Ni{ii8þÿÿiiýÿÿÿiŸi90iiNFidíiiiQii0&iCiiiÿÿÿÿiþÿÿÿiûÿÿÿiéÿÿÿiÍöþÿi)i2iöÿÿÿi
iúiÈi«
lÿE,J_lŸJ‰bièiiii iìÿÿÿii4i'ige~li@l‡(kmÜ1'}XbCK';+sQ©0ã,û52pHR™!latz$ð“hÞY«1Qjg9i×^Ílv.52%òjSXv¨lP¨Dg—J+±!Vññ!GN11ð?¹ K^SelîÿÿÿP¨Dg—J+±!Vññ!GN11ð?¹ K^Sel latz$ð“hÞY«1Qjg9i×^Ílv.52%òjSXv¨lP¨Dg—J+±!Vññ!GN11ð?¹ K^SelîÿÿÿP¨Dg—J+±!Vññ!GN11ð?¹ K^SelHIä TlDG¨†dªrÓâÈYâ|gÄO¬s&YR5IlÞ3qvNÇh×iKaš«K›P­"ÐqÔ¤ ˧!ž–aç0mvK0<tI    DÖ[”•7¨fjwld:,"ÉP±S»^ g¶2ë$¥({P_RŒU’vD9û{‹)P¿Anf™YD8Þ5PgHÙ#ˆqÂEgS‡d27¹}µW>ËY‚§yÔ{A\<    ’zýkZ¼ ûp©+‘*ÕeX9šåEŠiÈ/§\;àâ:ö8bGÙ((ema!å Ï6‚o™}Z s'%COdÐ
¨YP]æ÷[BTªvWL? F®Ch_"!•x"'³öj‘jÝ4®x×o«CD<Y#!*³vYyvè#e¸JU>è+i[¼9*-Jc+`ÚS;?lcy(    R,t DBL_MAX_EXPR R
trangeR    Rtrandomt    randrange(R tbasestbaseRtmtntitMRRt_ta_bitstb_bitstxty((s]/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_long_future.pyt$test_correctly_rounded_true_division|sf     3;!! !$(t__name__t
__module__R%tTrueR,trequires_IEEE_754R<(((s]/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_long_future.pyR5s    &  cC sttƒdS(N(RR(((s]/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_long_future.pyt    test_mainÙst__main__(t
__future__RtsysR/R tunittestttest.test_supportRt
skipUnlessRt __getformat__t
startswithR@t
float_infoR    tDBL_MAXtmax_expR-tmin_expR
tmant_digR RRtTestCaseRRAR=(((s]/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_long_future.pyt<module>s$                ¤