Ñò
‘à"Ic           @   sô   d  Z  d d k Z d d k l Z d d k Z d d k Z d d k Z d d k Z d d k Z d Z d Z	 d e	 i
 d d ƒ d	 Z d
 e i f d „  ƒ  YZ d e i f d „  ƒ  YZ d e i f d „  ƒ  YZ d „  Z e d j o e ƒ  n d S(   s%   
Tests for uu module.
Nick Mathewson
iÿÿÿÿN(   t   test_supports5   The smooth-scaled python crept over the sleeping dog
sK   M5&AE('-M;V]T:"US8V%L960@<'ET:&]N(&-R97!T(&]V97(@=&AE('-L965P
(:6YG(&1O9PH s   begin %03o %s
t   %s   %%s   
 
end
t   UUTestc           B   s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c         C   s—   t  i t ƒ } t  i ƒ  } t i | | d ƒ |  i | i ƒ  t d ƒ t  i t ƒ } t  i ƒ  } t i | | d d ƒ |  i | i ƒ  t d ƒ d  S(   Nt   t1i¶  i¤  (   i¶  R   (   i¤  R   (   t	   cStringIOt   StringIOt	   plaintextt   uut   encodet   assertEqualt   getvaluet   encodedtextwrapped(   t   selft   inpt   out(    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt   test_encode   s    c         C   s–   t  i t d ƒ } t  i ƒ  } t i | | ƒ |  i | i ƒ  t ƒ t  i d d t d ƒ } t  i ƒ  } t i | | ƒ |  i | i ƒ  t ƒ d  S(   Ni¶  R   s(   UUencoded files may contain many lines,
s%   even some that have 'begin' in them.
(   i¶  s   t1(   i¶  s   t1(   R   R   R   R   t   decodeR	   R
   R   (   R   R   R   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt   test_decode    s    c         C   su   t  i d t ƒ } t  i ƒ  } y! t i | | ƒ |  i d ƒ Wn. t i j
 o } |  i t | ƒ d ƒ n Xd  S(   Ns   begin 644 t1
s   No exception throwns   Truncated input file(	   R   R   t   encodedtextR   R   t   failt   ErrorR	   t   str(   R   R   R   t   e(    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt   test_truncatedinput.   s    c         C   sq   t  i d ƒ } t  i ƒ  } y! t i | | ƒ |  i d ƒ Wn. t i j
 o } |  i t | ƒ d ƒ n Xd  S(   Nt    s   No exception throwns'   No valid begin line found in input file(   R   R   R   R   R   R   R	   R   (   R   R   R   R   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt   test_missingbegin7   s    (   t   __name__t
   __module__R   R   R   R   (    (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyR      s   	
			t   UUStdIOTestc           B   s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c         C   s   t  i |  _ t  i |  _ d  S(   N(   t   syst   stdint   stdout(   R   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt   setUpB   s    c         C   s   |  i  t _  |  i t _ d  S(   N(   R   R   R   (   R   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt   tearDownF   s    c         C   sX   t  i t ƒ t _ t  i ƒ  t _ t i d d d d ƒ |  i t i i	 ƒ  t
 d ƒ d  S(   Nt   -R   i¶  (   i¶  s   t1(   R   R   R   R   R   R   R   R   R	   R
   R   (   R   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyR   J   s    c         C   sR   t  i t d ƒ t _ t  i ƒ  t _ t i d d ƒ |  i t i i	 ƒ  t
 ƒ d  S(   Ni¶  R   R"   (   i¶  s   t1(   R   R   R   R   R   R   R   R   R	   R
   R   (   R   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyR   S   s    (   R   R   R    R!   R   R   (    (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyR   @   s   				t
   UUFileTestc           B   s>   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c      	   C   sp   y | i  ƒ  Wn" t t f j
 o
 ‚  n n Xy t i | i ƒ Wn" t t f j
 o
 ‚  n n Xd  S(   N(   t   closet
   SystemExitt   KeyboardInterruptt   ost   unlinkt   name(   R   t   f(    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt   _kill[   s    c         C   s$   t  i d |  _ t  i d |  _ d  S(   Nt   it   o(   R    t   TESTFNt   tmpint   tmpout(   R   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyR    j   s    c         C   s   |  `  |  ` d  S(   N(   R/   R0   (   R   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyR!   n   s    c      	   C   si  d  } } z=t i |  i ƒ t |  i d ƒ } | i t ƒ | i ƒ  t |  i d ƒ } t |  i d ƒ } t	 i
 | | |  i d d ƒ| i ƒ  | i ƒ  t |  i d ƒ } | i ƒ  } | i ƒ  |  i | t d |  i f ƒ t	 i
 |  i |  i |  i d d ƒt |  i d ƒ } | i ƒ  } | i ƒ  |  i | t d |  i f ƒ Wd  |  i | ƒ |  i | ƒ Xd  S(   Nt   wbt   rbt   wt   modei¤  t   r(   t   NoneR    R(   R/   t   opent   writeR   R$   R0   R   R   t   readR	   R   R+   (   R   t   fint   foutt   s(    (    s)   /mit/python/lib/python2.6/test/test_uu.pyR   r   s,    




"
!c         C   sÆ   d  } z« t i |  i ƒ t |  i d ƒ } | i t d |  i f ƒ | i ƒ  t |  i d ƒ } t	 i
 | ƒ | i ƒ  t |  i d ƒ } | i ƒ  } | i ƒ  |  i | t ƒ Wd  |  i | ƒ Xd  S(   NR3   i¤  R5   (   R6   R    R(   R/   R7   R8   R   R0   R$   R   R   R9   R	   R   R+   (   R   R*   R<   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyR      s    


c         C   s™   d  } z~ t i t d |  i f ƒ } t |  i d ƒ } t i | ƒ | i	 ƒ  t |  i d ƒ } |  i
 t i t i | ƒ | i	 ƒ  Wd  |  i | ƒ Xd  S(   Ni¤  R5   (   R6   R   R   R   R0   R7   R/   R   R   R$   t   assertRaisesR   R+   (   R   R*   (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt   test_decodetwice¤   s    
(   R   R   R+   R    R!   R   R   R>   (    (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyR#   Y   s   					c           C   s   t  i t t t ƒ d  S(   N(   R    t   run_unittestR   R   R#   (    (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt	   test_main´   s    t   __main__(   t   __doc__t   unittestt   testR    R   R'   R   R   R   R   t   replaceR   t   TestCaseR   R   R#   R@   R   (    (    (    s)   /mit/python/lib/python2.6/test/test_uu.pyt   <module>   s   0,[	