;
Μβ"Ic               @   s   d  Z  d d l Z d d l Z d d l m Z m Z m Z m Z m Z m	 Z	 d d l
 m Z Gd   d e j  Z d   Z e d k o e   n d S(	   uV   
Test suite to check compilance with PEP 247, the standard API
for hashing algorithms
i    N(   u   md5u   sha1u   sha224u   sha256u   sha384u   sha512(   u   supportc             B   s>   |  Ee  Z d d   Z d   Z d   Z d   Z d   Z d S(   c             C   sY   |  j  t | d   |  j  | j d  k p | j d k  |  j | j | j |  d  S(   Nu   digest_sizei    (   u   assert_u   hasattru   digest_sizeu   Noneu   check_objectu   new(   u   selfu   moduleu   key(    (    u-   /mit/python/lib/python3.0/test/test_pep247.pyu   check_module   s    &c             C   s΅  | d  k	 oY | |  } | | d  } | | d  j   } | |  } | j d  | j   } nJ |   } | d  } | d  j   } |   } | j d  | j   } |  j | |  |  j t | d   | d  k	 o |  j | j |  n |  j | j t |   | j d  | j   }	 |  j | j   |	 j    |  j | j	   |	 j	    | j   | j	   }
 } d } x |
 D] } | d | 7} qW|  j | |  d  S(   Ns   stringu   digest_sizeu    u   %02x(
   u   Noneu   digestu   updateu   assertEqualsu   assert_u   hasattru   digest_sizeu   lenu   copyu	   hexdigest(   u   selfu   clsu   digest_sizeu   keyu   obj1u   obj2u   h1u   obj3u   h2u   obj_copyu   digestu	   hexdigestu   hd2u   byte(    (    u-   /mit/python/lib/python3.0/test/test_pep247.pyu   check_object   s8    		 c             C   s   |  j  t d  d   d  S(   N(   u   check_objectu   md5u   None(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_pep247.pyu   test_md53   s    c             C   sc   |  j  t d  d   |  j  t d  d   |  j  t d  d   |  j  t d  d   |  j  t d  d   d  S(   N(   u   check_objectu   sha1u   Noneu   sha224u   sha256u   sha384u   sha512(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_pep247.pyu   test_sha6   s
    c             C   s   |  j  t d d d  S(   Nu   keys   abc(   u   check_moduleu   hmac(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_pep247.pyu	   test_hmac=   s    N(   u   __name__u
   __module__u   Noneu   check_moduleu   check_objectu   test_md5u   test_shau	   test_hmac(   u
   __locals__(    (    u-   /mit/python/lib/python3.0/test/test_pep247.pyu
   Pep247Test   s
   
	!		u
   Pep247Testc               C   s   t  j t  d  S(   N(   u   supportu   run_unittestu
   Pep247Test(    (    (    u-   /mit/python/lib/python3.0/test/test_pep247.pyu	   test_main@   s    u   __main__(   u   __doc__u   hmacu   unittestu   hashlibu   md5u   sha1u   sha224u   sha256u   sha384u   sha512u   testu   supportu   TestCaseu
   Pep247Testu	   test_mainu   __name__(    (    (    u-   /mit/python/lib/python3.0/test/test_pep247.pyu   <module>   s   .5	