ó ükWc@sòdZddlZddlmZddlZddlZddlZddlZddlZdZdZ de j ddƒd Z d ej fd „ƒYZ d ej fd „ƒYZdej fd„ƒYZd„ZedkrîeƒndS(s% Tests for uu module. Nick Mathewson iÿÿÿÿN(t test_supports5The smooth-scaled python crept over the sleeping dog sKM5&AE('-M;V]T:"US8V%L960@<'ET:&]N(&-R97!T(&]V97(@=&AE('-L965P (:6YG(&1O9PH sbegin %03o %s t%s%%s end tUUTestcBs5eZd„Zd„Zd„Zd„Zd„ZRS(cCs—tjtƒ}tjƒ}tj||dƒ|j|jƒtdƒtjtƒ}tjƒ}tj||ddƒ|j|jƒtdƒdS(Ntt1i¶i¤(i¶R(i¤R(t cStringIOtStringIOt plaintexttuutencodet assertEqualtgetvaluetencodedtextwrapped(tselftinptout((s"/usr/lib/python2.7/test/test_uu.pyt test_encodes  cCs–tjtdƒ}tjƒ}tj||ƒ|j|jƒtƒtjddtdƒ}tjƒ}tj||ƒ|j|jƒtƒdS(Ni¶Rs(UUencoded files may contain many lines, s%even some that have 'begin' in them. (i¶st1(i¶st1(RRR RtdecodeR R R(R R R((s"/usr/lib/python2.7/test/test_uu.pyt test_decode s  cCsstjdtƒ}tjƒ}y!tj||ƒ|jdƒWn,tjk rn}|jt|ƒdƒnXdS(Ns begin 644 t1 sNo exception raisedsTruncated input file( RRt encodedtextRRtfailtErrorR tstr(R R Rte((s"/usr/lib/python2.7/test/test_uu.pyttest_truncatedinput.s cCsotjdƒ}tjƒ}y!tj||ƒ|jdƒWn,tjk rj}|jt|ƒdƒnXdS(NtsNo exception raiseds'No valid begin line found in input file(RRRRRRR R(R R RR((s"/usr/lib/python2.7/test/test_uu.pyttest_missingbegin7s cCs…d}d}tj|ƒ}tjƒ}tj||dtƒ|j|jƒ|ƒddl}|j|dƒ}|j||ƒdS(Nsbegin 644 file !,___ end t3tquietiÿÿÿÿtuu_codec(RRRRtTrueR R tcodecs(R RRR RRtdecoded((s"/usr/lib/python2.7/test/test_uu.pyttest_garbage_padding@s  (t__name__t __module__RRRRR (((s"/usr/lib/python2.7/test/test_uu.pyRs   t UUStdIOTestcBs,eZd„Zd„Zd„Zd„ZRS(cCstj|_tj|_dS(N(tsyststdintstdout(R ((s"/usr/lib/python2.7/test/test_uu.pytsetUpVs cCs|jt_|jt_dS(N(R%R$R&(R ((s"/usr/lib/python2.7/test/test_uu.pyttearDownZs cCsXtjtƒt_tjƒt_tjddddƒ|jtjj ƒt dƒdS(Nt-Ri¶(i¶st1( RRRR$R%R&RRR R R (R ((s"/usr/lib/python2.7/test/test_uu.pyR^s  cCsRtjtdƒt_tjƒt_tjddƒ|jtjj ƒt ƒdS(Ni¶RR)(i¶st1( RRR R$R%R&RRR R R(R ((s"/usr/lib/python2.7/test/test_uu.pyRgs(R!R"R'R(RR(((s"/usr/lib/python2.7/test/test_uu.pyR#Ts   t UUFileTestcBsGeZd„Zd„Zd„Zd„Zd„Zd„Zd„ZRS(cCsly|jƒWn ttfk r*‚nnXytj|jƒWn ttfk ra‚nnXdS(N(tcloset SystemExittKeyboardInterrupttostunlinktname(R tf((s"/usr/lib/python2.7/test/test_uu.pyt_killoscCs$tjd|_tjd|_dS(Ntito(RtTESTFNttmpinttmpout(R ((s"/usr/lib/python2.7/test/test_uu.pyR'~scCs|`|`dS(N(R6R7(R ((s"/usr/lib/python2.7/test/test_uu.pyR(‚scCsid}}z=tj|jƒt|jdƒ}|jtƒ|jƒt|jdƒ}t|jdƒ}t j |||jddƒ|jƒ|jƒt|jdƒ}|j ƒ}|jƒ|j |t d|jfƒt j |j|j|jddƒt|jdƒ}|j ƒ}|jƒ|j |t d|jfƒWd|j|ƒ|j|ƒXdS(Ntwbtrbtwtmodei¤tr(tNoneRR/R6topentwriteRR+R7RRtreadR R R2(R tfintfoutts((s"/usr/lib/python2.7/test/test_uu.pyR†s,       "  ! cCsÆd}z«tj|jƒt|jdƒ}|jtd|jfƒ|jƒt|jdƒ}t j |ƒ|jƒt|jdƒ}|j ƒ}|jƒ|j |t ƒWd|j|ƒXdS(NR:i¤R<(R=RR/R6R>R?R R7R+RRR@R RR2(R R1RC((s"/usr/lib/python2.7/test/test_uu.pyR¤s     cCs­d}z’tj|jƒt|jdƒ}|jtd|jfƒ|jƒt j |jƒt|jdƒ}|j ƒ}|jƒ|j |t ƒWd|j|ƒXdS(NR:i¤R<(R=RR/R6R>R?R R7R+RRR@R RR2(R R1RC((s"/usr/lib/python2.7/test/test_uu.pyttest_decode_filename¸s   cCs™d}z~tjtd|jfƒ}t|jdƒ}tj|ƒ|j ƒt|jdƒ}|j tj tj|ƒ|j ƒWd|j |ƒXdS(Ni¤R<( R=RRR R7R>R6RRR+t assertRaisesRR2(R R1((s"/usr/lib/python2.7/test/test_uu.pyttest_decodetwiceÉs  ( R!R"R2R'R(RRRDRF(((s"/usr/lib/python2.7/test/test_uu.pyR*ms      cCstjtttƒdS(N(Rt run_unittestRR#R*(((s"/usr/lib/python2.7/test/test_uu.pyt test_mainÙst__main__(t__doc__tunittestttestRR$R.RRRRtreplaceR tTestCaseRR#R*RHR!(((s"/usr/lib/python2.7/test/test_uu.pyts 0 @l