ó
j4Vdc           @   s²   d  Z  d Z d d l Z d d l Z e j d d k rW e j d d k rW d d l Tn  d d l Td e j f d	 „  ƒ  YZ i  d
 „ Z	 e
 d k r® d „  Z e j d d ƒ n  d S(   s'   Self-test suite for Crypto.Random.new()s   $Id$iÿÿÿÿNi    i   i   (   t   *t
   SimpleTestc           B   s   e  Z d  „  Z RS(   c         C   sÞ  d d l  m } | j ƒ  } | j d ƒ } | j d ƒ } |  j | | ƒ | j d ƒ } |  j | | ƒ |  j | | ƒ d d l m } | j d ƒ } | j d ƒ } |  j | | ƒ | | k rÒ | } | } n | } | } xÍ t	 d d ƒ D]¼ }	 | j
 | | |	 ƒ } | j
 | | |	 ƒ } |  j | | ƒ |  j | | k oK| k  n t ƒ |  j | | k oq| k  n t ƒ |  j | | |	 d ƒ |  j | | |	 d ƒ qî Wx0 t	 d ƒ D]" }
 |  j | j
 d d	 ƒ d ƒ q»W|  j t | j
 | | ƒ |  j t | j
 | | |	 ƒ |  j t | j
 | | |	 |	 ƒ |  j t | j
 | | d
 ƒ |  j t | j
 d
 | |	 ƒ |  j t | j
 d d |	 ƒ |  j t | j
 | | d ƒ | j | | ƒ } | j | | ƒ } |  j | | ƒ |  j | | k oö| k n t ƒ |  j | | k o| k n t ƒ x0 t	 d ƒ D]" }
 |  j | j d d ƒ d ƒ q2W|  j t | j | | ƒ |  j t | j | | |	 ƒ |  j t | j d
 | ƒ |  j t | j d d ƒ t	 d ƒ } | j | ƒ } | j | ƒ } |  j | | ƒ |  j | | k t ƒ |  j | | k t ƒ x3 t	 d ƒ D]% }
 |  j | j d ƒ d k t ƒ q2W|  j | j d d	 d g ƒ d k t ƒ t j d d k rÐ|  j | j t t d ƒ ƒ ƒ t t d ƒ ƒ k t ƒ n  |  j d | j d g ƒ ƒ |  j t | j g  ƒ |  j t | j d ƒ t	 d ƒ } t | ƒ } t | ƒ } | j | ƒ | j | ƒ |  j | | ƒ |  j t | ƒ t | ƒ ƒ |  j t | ƒ t | ƒ ƒ x‚ t	 t | ƒ ƒ D]n }
 |  j | |
 | k t ƒ |  j | |
 | k t ƒ |  j | |
 | k t ƒ |  j | |
 | k t ƒ q±Wd g } | j | ƒ |  j | d g ƒ t j d d k r¹t t d ƒ ƒ } | j | ƒ |  j t d
 ƒ | k t ƒ |  j t | j t d ƒ ƒ n  |  j t | j d ƒ |  j t | j d
 ƒ |  j t | j d ƒ | j | d ƒ } | j | d ƒ } |  j | | ƒ xH t	 d ƒ D]: }
 |  j | |
 | k t ƒ |  j | |
 | k t ƒ q<W| j d g d ƒ } |  j | d g ƒ | j d d ƒ } |  j | d d k t ƒ | j d d ƒ } |  j | d d k t ƒ | j t	 d ƒ d ƒ } |  j | d t	 d ƒ k t ƒ t j d d k rÄ| j t d ƒ d ƒ } |  j | d t d ƒ k t ƒ | j t t d ƒ ƒ d ƒ } |  j | d t t d ƒ ƒ k t ƒ n  |  j t | j d ƒ d S(   s   Crypto.Random.new()iÿÿÿÿ(   t   Randomi   (   t   randomi   i   i
   i    i   t   1t   2i'  i   t   123iô  t   12i   Ni€   i€   (   i   i   i   (   i   i   i   (   i   i   i   (   i   i   (   i   i   i   (   i   i   i   (   t   CryptoR   t   newt   readt   assertNotEqualt   get_random_bytest   Crypto.RandomR   t   getrandbitst   ranget	   randranget   assertEqualt   Truet   assertRaisest
   ValueErrort	   TypeErrort   randintt   choicet   syst   version_infot	   bytearrayt   bt
   IndexErrort   listt   shufflet   lent   sample(   t   selfR   t   randobjt   xt   yt   zR   t   startt   stopt   stept   it   seq(    (    sp   /var/www/html/phendo-backend/phendo_python/env/lib/python2.7/site-packages/Crypto/SelfTest/Random/test_random.pyt   runTest$   sÎ    	&& && #(:	  )(   t   __name__t
   __module__R+   (    (    (    sp   /var/www/html/phendo-backend/phendo_python/env/lib/python2.7/site-packages/Crypto/SelfTest/Random/test_random.pyR   #   s   c         C   s
   t  ƒ  g S(   N(   R   (   t   config(    (    sp   /var/www/html/phendo-backend/phendo_python/env/lib/python2.7/site-packages/Crypto/SelfTest/Random/test_random.pyt	   get_tests¤   s    t   __main__c           C   s   t  j t ƒ  ƒ S(   N(   t   unittestt	   TestSuiteR/   (    (    (    sp   /var/www/html/phendo-backend/phendo_python/env/lib/python2.7/site-packages/Crypto/SelfTest/Random/test_random.pyt   <lambda>¨   t    t   defaultTestt   suite(   t   __doc__t   __revision__R1   R   R   t   Crypto.Util.py21compatt   Crypto.Util.py3compatt   TestCaseR   R/   R,   R6   t   main(    (    (    sp   /var/www/html/phendo-backend/phendo_python/env/lib/python2.7/site-packages/Crypto/SelfTest/Random/test_random.pyt   <module>   s   &
	