ó {G_Tc@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 tUUTestcBs,eZd„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/local/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/local/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/local/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/local/lib/python2.7/test/test_uu.pyttest_missingbegin7s (t__name__t __module__RRRR(((s(/usr/local/lib/python2.7/test/test_uu.pyRs  t UUStdIOTestcBs,eZd„Zd„Zd„Zd„ZRS(cCstj|_tj|_dS(N(tsyststdintstdout(R ((s(/usr/local/lib/python2.7/test/test_uu.pytsetUpBs cCs|jt_|jt_dS(N(RRR(R ((s(/usr/local/lib/python2.7/test/test_uu.pyttearDownFs cCsXtjtƒt_tjƒt_tjddddƒ|jtjj ƒt dƒdS(Nt-Ri¶(i¶st1( RRRRRRRRR R R (R ((s(/usr/local/lib/python2.7/test/test_uu.pyRJs  cCsRtjtdƒt_tjƒt_tjddƒ|jtjj ƒt ƒdS(Ni¶RR"(i¶st1( RRR RRRRRR R R(R ((s(/usr/local/lib/python2.7/test/test_uu.pyRSs(RRR R!RR(((s(/usr/local/lib/python2.7/test/test_uu.pyR@s   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/local/lib/python2.7/test/test_uu.pyt_kill[scCs$tjd|_tjd|_dS(Ntito(RtTESTFNttmpinttmpout(R ((s(/usr/local/lib/python2.7/test/test_uu.pyR jscCs|`|`dS(N(R/R0(R ((s(/usr/local/lib/python2.7/test/test_uu.pyR!nscCsid}}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(R/topentwriteRR$R0RRtreadR R R+(R tfintfoutts((s(/usr/local/lib/python2.7/test/test_uu.pyRrs,       "  ! cCsÆd}z«tj|jƒt|jdƒ}|jtd|jfƒ|jƒt|jdƒ}t j |ƒ|jƒt|jdƒ}|j ƒ}|jƒ|j |t ƒWd|j|ƒXdS(NR3i¤R5(R6RR(R/R7R8R R0R$RRR9R RR+(R R*R<((s(/usr/local/lib/python2.7/test/test_uu.pyRs     cCs­d}z’tj|jƒt|jdƒ}|jtd|jfƒ|jƒt j |jƒt|jdƒ}|j ƒ}|jƒ|j |t ƒWd|j|ƒXdS(NR3i¤R5(R6RR(R/R7R8R R0R$RRR9R RR+(R R*R<((s(/usr/local/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¤R5( R6RRR R0R7R/RRR$t assertRaisesRR+(R R*((s(/usr/local/lib/python2.7/test/test_uu.pyttest_decodetwiceµs  ( RRR+R R!RRR=R?(((s(/usr/local/lib/python2.7/test/test_uu.pyR#Ys      cCstjtttƒdS(N(Rt run_unittestRRR#(((s(/usr/local/lib/python2.7/test/test_uu.pyt test_mainÅst__main__(t__doc__tunittestttestRRR'RRRRtreplaceR tTestCaseRRR#RAR(((s(/usr/local/lib/python2.7/test/test_uu.pyts 0 ,l