Viewing File: /usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pyo

σ
j^ŽXc@`sΐdZddlmZmZmZddlZejeƒZddl	m
Z
ddlmZm
Z
mZddlmZmZddlmZmZmZer΄dd	lmZnd
gZdZdZeddƒrαd
Zn`er,ddlZddlZejjdƒZerej j!eƒs<e"deƒ‚ne#d„ddgDƒƒske"deƒ‚nej$deƒej j%edƒZ&ej j'de&ƒzJyddl(m)ZWn/e*k
rλZ+e
e"dee+fƒƒ‚nXWdej j,e&ƒXqAdZedƒrAej-j.dƒqAner;dZndZer¦ddl/m0Z0ddl1m2Z2ddl3m4Z4ddl	m5Z5d
ej6efd „ƒYZ7nd
efd!„ƒYZ7dS("s5
test passlib.ext.django against django source tests
i(tabsolute_importtdivisiontprint_functionN(tsuppress_cause(tDJANGO_VERSIONtDjangoTranslatort_PasslibHasherWrapper(tTestCaset	TEST_MODEi(thas_min_djangotstock_configt_ExtensionSupport(tsettingstHashersTesttmaxtquicksrequires >= 'default' test modet PASSLIB_TESTS_DJANGO_SOURCE_PATHs django source path not found: %rcc`s0|]&}tjjtjjt|ƒƒVqdS(N(tostpathtexiststjointsource_path(t.0tname((sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pys	<genexpr>6stdjangottestssinvalid django source path: %rs'using django tests from source path: %r(ttest_hasherss=error trying to import django tests from source path (%r): %rs3requires PASSLIB_TESTS_DJANGO_SOURCE_PATH to be settfullst
WARNING: $PASSLIB_TESTS_DJANGO_SOURCE_PATH is not set; can't run Django's own unittests against passlib.ext.django
sdjango version too oldsdjango not installed(tsetting_changed(treceiver(t
import_string(tget_unbound_method_functioncB`sPeZdZeejƒZd„Zd„Zd„ZeZ	eZ
eZeZRS(sq
        Run django's hasher unittests against passlib's extension
        and workalike implementations
        c`st|jdtdtƒddlm‰ˆj‰ddlm}x9dddd	d
gD]"}|jt	|t
||ƒƒqUWddlm}|j|dtƒt
ƒj‰ttd
tƒ‡‡‡fd†ƒ}|jtj|ƒ|ƒ‡‡fd†‰tg‰‡‡fd†}x<dddddddgD]}|jˆ||dtƒq4W|jˆd|dtƒdS(NtPASSLIB_CONTEXTtchecki(tadapter(thasherst
make_passwordtcheck_passwordtidentify_hashertis_password_usablet
get_hasher(tdjango_des_crypttuse_duplicate_salttweakc`sž|r|ddkrdSgtjD]}ˆt|ƒƒƒ^q$}d|krmd|krm|jdƒn|jdƒˆjd|ddƒˆjƒdS(	NtsettingtPASSWORD_HASHERSthex_md5tdjango_salted_md5tdjango_disabledtschemest
deprecatedtauto(RR-Rtappendtupdatet
reset_hashers(tkwdst	hash_pathR1(R"tcontexttdjango_to_passlib_name(sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pytupdate_schemess(
c`s§x ˆjdtƒD]Œ}d|jkr.qnˆj|ƒ}t|tƒrRqnt|ddƒpst|ddƒ}|dkrˆqn||_|_	|_
qWdS(sN
                sync django hasher config -> passlib hashers
                tresolvetroundst
iterationsN(R1tTruetsetting_kwdstpasslib_to_djangot
isinstanceRtgetattrtNonetmin_desired_roundstmax_desired_roundstdefault_rounds(thandlerthasherR=(R"R9(sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pyt
update_rounds«sc`s=ˆds0tˆd<zˆƒWdtˆd<Xn|||ŽS(sY
                wrapper around arbitrary func, that first triggers sync
                iN(R?tFalse(twrappedtargsR7(t
_in_updateRJ(sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pytupdate_wrapperΐs

R1RHtdefault_schemethashtverifytneeds_updatetverify_and_updatetwraptdjango_to_passlib(tload_extensionR
RKtpasslib.ext.django.modelsR"R9tdjango.contrib.authR#t	patchAttrttest_hashers_modRCtpasslib.hashR)RR:RRt
addCleanupt
disconnectR?(tselfR#tattrR)R;RO((RNR"R9R:RJsH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pytsetUpns.	
 '	
cC`s!|jƒtt|ƒjƒdS(N(tunload_extensiontsuperR
ttearDown(R_((sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pyRdΤs
cC`s
|jdƒS(Nsomitted by passlib(tskipTest(R_((sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pyt<lambda>ήs(
t__name__t
__module__t__doc__RRRZRaRdt_OMITttest_pbkdf2_upgrade_new_hashert(test_check_password_calls_harden_runtimettest_bcrypt_harden_runtimettest_pbkdf2_harden_runtime(((sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pyR
^s	f	
	cB`seZd„ZRS(cC`s|jtƒ‚dS(sexternal django hasher testsN(Rethashers_skip_msg(R_((sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pyt!test_external_django_hasher_testsτs(RgRhRp(((sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pyR
ςs(8Rit
__future__RRRtloggingt	getLoggerRgtlogtpasslib.utils.compatRtpasslib.ext.django.utilsRRRtpasslib.tests.utilsRRttest_ext_djangoR	R
RRt__all__RDR[RoRtsystenvirontgetRRRtEnvironmentErrortalltinfoRt
tests_pathtinsertt
auth_testsRtImportErrorterrtremovetstderrtwritetdjango.core.signalsRtdjango.dispatchRtdjango.utils.module_loadingRRtTestUtilsHashPassR
(((sH/usr/lib/python2.7/site-packages/passlib/tests/test_ext_django_source.pyt<module>s`				”
Back to Directory File Manager