ó õùPc@s²dZdZddlZddlZejddkrWejddkrWddlTnddlTdejfd „ƒYZid „Z e d kr®d „Z ej d dƒndS(s'Self-test suite for Crypto.Random.new()s$Id$iÿÿÿÿNiii(t*t SimpleTestcBseZd„ZRS(c CsÞddlm}|jƒ}|jdƒ}|jdƒ}|j||ƒ|jdƒ}|j||ƒ|j||ƒddlm}|jdƒ}|jdƒ}|j||ƒ||krÒ|}|}n |}|}xÍt ddƒD]¼} |j ||| ƒ}|j ||| ƒ}|j||ƒ|j ||koK|knt ƒ|j ||koq|knt ƒ|j ||| dƒ|j ||| dƒqîWx0t dƒD]"} |j |j dd ƒdƒq»W|j t|j ||ƒ|j t|j ||| ƒ|j t|j ||| | ƒ|j t|j ||d ƒ|j t|j d || ƒ|j t|j dd | ƒ|j t|j ||dƒ|j||ƒ}|j||ƒ}|j||ƒ|j ||koö|knt ƒ|j ||ko|knt ƒx0t dƒD]"} |j |jddƒdƒq2W|j t|j||ƒ|j t|j||| ƒ|j t|jd |ƒ|j t|jdd ƒt d ƒ} |j| ƒ}|j| ƒ}|j||ƒ|j || kt ƒ|j || kt ƒx3t dƒD]%} |j |jdƒdkt ƒq2W|j |jdd d gƒdkt ƒtjdd krÐ|j |jttdƒƒƒttdƒƒkt ƒn|j d|jdgƒƒ|j t|jgƒ|j t|jdƒt dƒ} t| ƒ}t| ƒ}|j|ƒ|j|ƒ|j||ƒ|j t| ƒt|ƒƒ|j t| ƒt|ƒƒx‚t t| ƒƒD]n} |j || | kt ƒ|j || | kt ƒ|j | | |kt ƒ|j | | |kt ƒq±Wdg}|j|ƒ|j |dgƒtjdd kr¹ttdƒƒ}|j|ƒ|j td ƒ|kt ƒ|j t|jtdƒƒn|j t|jdƒ|j t|jd ƒ|j t|jdƒ|j| dƒ}|j| dƒ}|j||ƒxHt dƒD]:} |j || | kt ƒ|j || | kt ƒq<W|jdgdƒ}|j |dgƒ|jddƒ}|j |ddkt ƒ|jddƒ}|j |ddkt ƒ|jt d ƒdƒ}|j |dt d ƒkt ƒtjdd krÄ|jtdƒdƒ}|j |dtdƒkt ƒ|jttdƒƒdƒ}|j |dttdƒƒkt ƒn|j t|jdƒdS(sCrypto.Random.new()iÿÿÿÿ(tRandomi(trandomiii iit1t2i'it123iôt12iNi€i€(iii(iii(iii(ii(iii(iii(tCryptoRtnewtreadtassertNotEqualtget_random_bytest Crypto.RandomRt getrandbitstranget randranget assertEqualtTruet assertRaisest ValueErrort TypeErrortrandinttchoicetsyst version_infot bytearraytbt IndexErrortlisttshuffletlentsample( tselfRtrandobjtxtytzRtstarttstoptsteptitseq((s=..\python\site-packages\Crypto\SelfTest\Random\test_random.pytrunTest$sÎ    && &&  #(:          )(t__name__t __module__R+(((s=..\python\site-packages\Crypto\SelfTest\Random\test_random.pyR#scCs tƒgS(N(R(tconfig((s=..\python\site-packages\Crypto\SelfTest\Random\test_random.pyt get_tests¤st__main__cCstjtƒƒS(N(tunittestt TestSuiteR/(((s=..\python\site-packages\Crypto\SelfTest\Random\test_random.pyt¨st defaultTesttsuite( t__doc__t __revision__R1RRtCrypto.Util.py21compattCrypto.Util.py3compattTestCaseRR/R,R5tmain(((s=..\python\site-packages\Crypto\SelfTest\Random\test_random.pyts  &