֙ d Z ddlZddlZddlT ddlmZ ddlmZ ddlm Z G d de
Z G d d
ej Z
G d dej Zi fd
Zedk rd Z ej d dS dS )z+Self-tests for (some of) Crypto.Util.number N)*)list_test_cases)number)
long_to_bytesc e Zd ZdZdS )MyErrorzDummy exception used for testsN)__name__
__module____qualname____doc__ /builddir/build/BUILD/imunify360-venv-2.6.2/opt/imunify360/venv/lib64/python3.11/site-packages/Crypto/SelfTest/Util/test_number.pyr r % s ((((r r c , e Zd Zd Zd Zd Zd Zd ZdS ) MiscTestsc | t t j dd | t t j dd | t t j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j d d | dt j d
d | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j dd | dt j d d | dt j d
d | dt j dd | dt j dd d
S )zUtil.number.ceil_div1 r N)assertRaises TypeErrorr ceil_divZeroDivisionErrorassertEqualselfs r
test_ceil_divzMiscTests.test_ceil_div- s )V_c1===+V_aCCC+V_b!DDD
FOAq11222FOAq11222FOAq11222FOAq11222
FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222
FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222
FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222FOAq11222FOAq1122222r c | t t j d | t t j d | t t j d d}t d D ]S}t j | }| |d|dz
z k d | |d|z k d Td}t j | }| |dz d | |d|dz
z k d | |d|z k d dS ) zUtil.number.getPrimeir r r d r N)r
ValueErrorr getPrimeranger" assertNotEqual)r$ bitsixs r
test_getPrimezMiscTests.test_getPrimeW s2 *fot<<<*foq999*foq999s 1 1A%%AQ1q=11555Q!t)_a0000OD!!AE1%%%qD1H}-q111a4i!,,,,,r c | t t j d | t t j d d}t j | }| |dz d | |d|dz
z dz
k d | |d|z k d d}t j || }| t j |dz
| d | |dz d | |d|dz
z dz
k d | |d|z k d d}t j || }| t j |dz
dz | d | |dz d | |d|dz
z dz
k d | |d|z k d d S )
zUtil.number.getStrongPrime i r( r r r i i N)r r) r getStrongPrimer, r" GCD)r$ r- r/ es r test_getStrongPrimezMiscTests.test_getStrongPrimei s *f&;SAAA*f&;SAAA!$''AE1%%%a46k1_,a000a4i!,,,!$**AaC++Q///AE1%%%a46k1_,a000a4i!,,,!$**QqS1Ha00!444AE1%%%a46k1_,a000a4i!,,,,,r c | t j d d | t j d d | t j d d | t j d d | t j d d | t j d d | t j dd z dz
d | t j dd z dz
d d
D ]7}| t j t | d 8dS )zUtil.number.isPrimeFr r Tr r i )i i idl u^ l +%!al Mnz]l g4+ l I>6l S{AKW
l b\\QN l zIlv3 l _VB;.( N)r" r isPrimeint)r$ composites r test_isPrimezMiscTests.test_isPrime s_ ++U333++U333**E222**D111**D111**E2224 22D999!T'!)55u===L D DI
V^C NN;;UCCCC D Dr c | t j d d | t j d d | t j d d | t j d d | t j d d | t t j d d S )
Nr r r i@ lE )8^n, n:zb|DELU"N79Y Sh
"*f8<>ktk26"z BT6 V RNcc\]]rX"Sw~o 8I(jO32
i r )r" r sizer r) r# s r test_sizezMiscTests.test_size s Q***Q***T**1---X..s333 &h i i ko p p p*fk266666r N)r r
r r% r0 r6 r= rB r
r r r r + sc (3 (3 (3T- - -$- - -,D D D&7 7 7 7 7r r c e Zd Zd Zd Zd ZdS ) LongTestsc | t d d | t d d | t d d | t d d | t d d | t d d
| t d d d S )
Nr r r2 l s l w*M s "3DUfwl LUs "3DUfwr" r r# s r test1zLongTests.test1 s q))7333q))7333u--{;;;|446MNNN|446MNNN'9::<_```';<<>efffffr c | t dd d | t dd d | t dd d | t dd d | t d
d d | t dd d
| t dd d | t dd d | t dd d | t dd d d S )Nr r rF r s r s i s i s r2 rH l r s r s
s
s rI r# s r test2zLongTests.test2 sM q!,,g666q!,,k:::q!,,o>>>ua00+>>>ua002EFFFua00+>>>|Q779TUUU|Q779\]]]|R88:efff|R88:ijjjjjr c H | t t d d S )Nr )r r) r r# s r test_err1zLongTests.test_err1 s *mR88888r N)r r
r rJ rN rP r
r r rD rD sG g g g
k
k
k9 9 9 9 9r rD c f g }|t t z
}|t t z
}|S N)r r rD )configtestss r get_testsrU s0 E _Y
'
''E _Y
'
''ELr __main__c B t j t S rR )unittest TestSuiterU r
r r