;
Ëâ"Ic               @   si   d  Z  d d l m Z d d l Z d d l Z Gd „  d e j ƒ Z d „  Z e d k o e ƒ  n d S(   u   Test the binascii C module.i    (   u   supportNc             B   s…   |  Ee  Z d  Z e e e d ƒ ƒ 7Z e d 7Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z d S(   s.   The quick brown fox jumps over the lazy dog.
i   s   
Hello world.
c             C   s6   |  j  t t j t ƒ ƒ |  j  t t j t ƒ ƒ d  S(   N(   u   assert_u
   issubclassu   binasciiu   Erroru	   Exceptionu
   Incomplete(   u   self(    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   test_exceptions   s    c             C   sê   g  } x” d D]Œ } d d g } | d k o | j  d d d	 g ƒ n xP | D]H } | | } |  j t t t | ƒ d
 ƒ ƒ |  j t t t | ƒ ƒ qM Wq WxF d D]> } |  j t t t | ƒ d
 ƒ ƒ |  j t t t | ƒ ƒ q¤ Wd  S(   Nu   base64u   hqxu   uuu   hexu   a2b_u   b2a_u   crc_u   rlecode_u
   rledecode_u   __call__u   hexlifyu	   unhexlify(   u   base64u   hqxu   uuu   hex(   u   hexlifyu	   unhexlify(   u   extendu   assert_u   hasattru   getattru   binasciiu   assertRaisesu	   TypeError(   u   selfu   funcsu   suffixu   prefixesu   prefixu   name(    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   test_functions   s      
! c             C   s¯   d } g  } xV t  d t |  j ƒ | ƒ D]9 } |  j | | | … } t j | ƒ } | j | ƒ q( Wt ƒ  } x' | D] } t j | ƒ } | | 7} qu W|  j | |  j ƒ d  S(   Ni9   i    (	   u   rangeu   lenu   datau   binasciiu
   b2a_base64u   appendu   bytesu
   a2b_base64u   assertEqual(   u   selfu
   MAX_BASE64u   linesu   iu   bu   au   resu   line(    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   test_base64valid#   s     	 c       
   	      s$  d } g  } xV t  d t |  j ƒ | ƒ D]9 } |  j | | | … } t j | ƒ } | j | ƒ q( Wt ƒ  ‰  d } x2 t  d ƒ D]$ } | | k o ˆ  j | ƒ q q W‡  f d †  } t ƒ  } x0 t | | ƒ D] }	 t j |	 ƒ } | | 7} qÑ W|  j	 | |  j ƒ |  j	 t j ˆ  ƒ d ƒ d  S(   Ni9   i    s@   abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/i   c                s«   ˆ  } t  |  ƒ t  | ƒ } t ƒ  } xw |  oo | oh t  |  ƒ t  | ƒ | k o |  d |  d d  … } }  n | d | d d  … } } | j | ƒ q( W| | |  S(   Ni    i   (   u   lenu	   bytearrayu   append(   u   lineu   noiseu   ratiou   resu   c(   u   fillers(    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   addnoise@   s    	 s    (
   u   rangeu   lenu   datau   binasciiu
   b2a_base64u   appendu	   bytearrayu   mapu
   a2b_base64u   assertEqual(
   u   selfu
   MAX_BASE64u   linesu   iu   bu   au   validu   addnoiseu   resu   line(    (   u   fillersu/   /mit/python/lib/python3.0/test/test_binascii.pyu   test_base64invalid1   s*     	 	 c          	   C   sU  d } g  } xV t  d t |  j ƒ | ƒ D]9 } |  j | | | … } t j | ƒ } | j | ƒ q( Wt ƒ  } x' | D] } t j | ƒ } | | 7} qu W|  j | |  j ƒ |  j t j d ƒ d d ƒ |  j t j d ƒ d d ƒ |  j t j d ƒ d d ƒ |  j	 t j
 t j d	 ƒ |  j	 t j
 t j d
 ƒ |  j	 t j
 t j d d ƒ d  S(   Ni-   i    s   s    i   s   €i    s   ÿs   ÿ s   !!!!i.   s   !(   u   rangeu   lenu   datau   binasciiu   b2a_uuu   appendu   bytesu   a2b_uuu   assertEqualu   assertRaisesu   Error(   u   selfu   MAX_UUu   linesu   iu   bu   au   resu   line(    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   test_uuU   s&     	 c             C   sH   t  j d ƒ } t  j d | ƒ } |  j | d ƒ |  j t t  j ƒ d  S(   Ns   Test the CRC-32 ofs    this string.ijë¦](   u   binasciiu   crc32u   assertEqualu   assertRaisesu	   TypeError(   u   selfu   crc(    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu
   test_crc32j   s    c             C   s›   d } t  j | ƒ } t  j | ƒ } |  j | | ƒ |  j t  j t  j | d  d … ƒ |  j t  j t  j | d  d … d ƒ |  j t  j d ƒ d ƒ d  S(   Ns    {s   worldi   s   helloi   0iÿÿÿÿs   qu   as   61(   u   binasciiu   b2a_hexu   a2b_hexu   assertEqualu   assertRaisesu   Erroru   hexlify(   u   selfu   su   tu   u(    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   test_hexs   s    #'c             C   s½  y t  j d i d d 6 Wn t k
 o Yn X|  j d ƒ |  j t  j d ƒ d ƒ |  j t  j d ƒ d ƒ |  j t  j d ƒ d ƒ |  j t t  j d d	 ƒ|  j t  j d
 ƒ d ƒ |  j t  j d ƒ d ƒ |  j t  j d d d ƒ d d d ƒ |  j t  j d ƒ d ƒ |  j t  j d d d ƒd ƒ |  j t  j d ƒ d ƒ |  j t  j d d d ƒd ƒ |  j t  j d ƒ d ƒ |  j t  j d ƒ d ƒ |  j t  j d ƒ d ƒ d  S(   Nu    i   u/   binascii.a2b_qp(**{1:1}) didn't raise TypeErrors   = s   ==s   =s   =AXu   foou   bars   =00
=00s    
 s   ÿ
ÿ
ÿs   =FF
=FF
=FFs   0iK   s   ÿ
ÿ
ÿs   =
=FF
=FF
=FFs    
s   =00
u	   quotetabss	   foo	bar	
s   foo	bar=09
s   foo=09bar=09
s   .s   =2Es   .
s   =2E
s   a.
T(   u   binasciiu   a2b_qpu	   TypeErroru   failu   assertEqualu   assertRaisesu   b2a_qpu   True(   u   self(    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   test_qp~   s0    c             C   s°   x™ d d d d d d d d d	 d
 d d d d d g D]d } t  t | ƒ } y | d ƒ Wq4 t k
 o2 } z |  j d | | f ƒ WYd  d  } ~ Xq4 Xq4 Wt j d d ƒ d  S(   Nu   b2a_qpu   a2b_hexu
   b2a_base64u   a2b_uuu   a2b_qpu   b2a_hexu	   unhexlifyu   hexlifyu   crc32u   b2a_hqxu   a2b_hqxu
   a2b_base64u   rlecode_hqxu   b2a_uuu   rledecode_hqxs    u   %s(b'') raises SystemError: %su    i    (   u   getattru   binasciiu   SystemErroru   failu   crc_hqx(   u   selfu   nu   fu   err(    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   test_empty_stringž   s     /N(   u   __name__u
   __module__u   datau   bytesu   rangeu   test_exceptionsu   test_functionsu   test_base64validu   test_base64invalidu   test_uuu
   test_crc32u   test_hexu   test_qpu   test_empty_string(   u
   __locals__(    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   BinASCIITest   s   

				$					 u   BinASCIITestc               C   s   t  j t ƒ d  S(   N(   u   supportu   run_unittestu   BinASCIITest(    (    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu	   test_main«   s    u   __main__(	   u   __doc__u   testu   supportu   unittestu   binasciiu   TestCaseu   BinASCIITestu	   test_mainu   __name__(    (    (    u/   /mit/python/lib/python3.0/test/test_binascii.pyu   <module>   s   ¤	