+
    i\                        R t ^ RIt]P                  ! ]4      t^ RIt]P                  ! RR4       ^ RIHt ^ RI	H
t
Ht ^ RIHtHt  ! R R]
4      t]P!                  R	4      t]P!                  R
4      t]P!                  R4      tR# )z?passlib.tests.test_handlers - tests for passlib hash algorithmsNignore .*using builtin scrypt backend.*)hash)HandlerCase	TEST_MODE)UPASS_TABLEPASS_TABLE_UTF8c                      a a ] tR t^t o]P
                  tRR	R
R]R3]R3R.t	]
! R4      '       d   ]	P                  RR.4       . ROtV 3R ltV 3R lt ! R R]P                   4      tRtVtV ;t# )_scrypt_testzW$scrypt$ln=7,r=8,p=1$jjGmtDamdA4BQAjBeA9BSA$OiWRHhQtpDx7M/793x6UXK14AD512jg/qNm/hkWZG4Mfullc                Z   < \         \        V `  4        \        P                  ! R R4       R# )r   r   N)superr
   setUpWarningswarningsfilterwarnings)self	__class__s   &`/var/www/html/photoedit/myenv/lib/python3.14/site-packages/passlib/tests/test_handlers_scrypt.pyr   _scrypt_test.setUpWarningsX   s!    lD/1*LM    c                t   < V P                   R 8X  d   VP                  R^4       \        \        V `  V4       R# )builtinroundsN)backend
setdefaultr   r
   populate_settings)r   kwdsr   s   &&r   r   _scrypt_test.populate_settings\   s,    <<9$OOHa(lD3D9r   c                   &   a  ] tR t^bt o R tRtV tR# )_scrypt_test.FuzzHashGeneratorc                *    V P                  ^^
^^4      # )   )randintgauss)r   s   &r   random_rounds,_scrypt_test.FuzzHashGenerator.random_roundsd   s    $$QAq11r    N)__name__
__module____qualname____firstlineno__r#   __static_attributes____classdictcell__)__classdict__s   @r   FuzzHashGeneratorr   b   s     	2 	2r   r-   r%   ) zA$scrypt$ln=4,r=1,p=1$$d9ZXYjhleyA7GcpCwYoEl/FrSETjB0ro39/6P+3iFEI)passwordzI$scrypt$ln=10,r=8,p=16$TmFDbA$/bq+HJ00cgB4VucZDQHp/nxq18vII3gw53N2Y0s3MWI)testzW$scrypt$ln=8,r=8,p=1$wlhLyXmP8b53bm1NKYVQqg$mTpvG8lzuuDk+DWz8HZIB6Vum6erDuUm0As5yU+VxWA)r/   zW$scrypt$ln=8,r=2,p=1$dO6d0xoDoLT2PofQGoNQag$g/Wf2A0vhHhaJM+addK61QPBthSmYB6uVTtQzh8CM3o)naclzW$scrypt$ln=1,r=4,p=2$yhnD+J+Tci4lZCwFgHCuVQ$fAsEWmxSHuC0cHKMwKVFPzrQukgvK09Sj+NueTSxKds)pleaseletmeinzU$scrypt$ln=14,r=8,p=1$U29kaXVtQ2hsb3JpZGU$cCO9yzr9c0hGHAbNgf046/2o+7qQT44+qbVD9lRdofI)r2   zH$7$C6..../....SodiumChloride$kBGj9fHznVYFQMEn/qDCfrDevf9YDtcDdKvEqHJLV8D)zT$scrypt$ln=10,r=1$wvif8/4fg1Cq9V7L2dv73w$bJcLia1lyfQ1X2x0xflehwVXPzWIUQWWdnlGwfVzBeQzW$scrypt$ln=0,r=1,p=1$wvif8/4fg1Cq9V7L2dv73w$bJcLia1lyfQ1X2x0xflehwVXPzWIUQWWdnlGwfVzBeQzX$scrypt$ln=10,r=A,p=1$wvif8/4fg1Cq9V7L2dv73w$bJcLia1lyfQ1X2x0xflehwVXPzWIUQWWdnlGwfVzBeQz`$scrypt$ln=10,r=134217728,p=8$wvif8/4fg1Cq9V7L2dv73w$bJcLia1lyfQ1X2x0xflehwVXPzWIUQWWdnlGwfVzBeQ)r&   r'   r(   r)   r   scrypthandlerr   r   known_correct_hashesr   extendknown_malformed_hashesr   r   r   r-   r*   r+   __classcell__)r   r,   s   @@r   r
   r
      s     kkG 	R 	b 	l 	p 
op 
st 	l=B ##NY%
 	"N:2K99 2 2r   r
   stdlibr3   r   )__doc__logging	getLoggerr&   logr   r   passlibr   passlib.tests.utilsr   r   passlib.tests.test_handlersr   r   r
   create_backend_casescrypt_stdlib_testscrypt_scrypt_testscrypt_builtin_testr%   r   r   <module>rE      s    E
 g''1    "D E  6 DS2; S2l "55h? !55h? "66yA r   