ó {G_Tc@sûddlZddlmZddlmZddlZddlZejdƒZejdƒZ ddl Z de fd„ƒYZ d„Z d dd „ƒYZd ejefd „ƒYZd ejefd„ƒYZd„Zedkr÷eƒndS(iÿÿÿÿN(t DocTestSuite(t test_supporttthreadt threadingtWeakcBseZRS((t__name__t __module__(((s5/usr/local/lib/python2.7/test/test_threading_local.pyR scCs,tƒ}||_|jtj|ƒƒdS(N(Rtweaktappendtweakreftref(tlocaltweaklistR((s5/usr/local/lib/python2.7/test/test_threading_local.pyttargets  t BaseLocalTestcBskeZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z RS( cCs+|jdƒ|jdƒ|jdƒdS(Nii2id(t _local_refs(tself((s5/usr/local/lib/python2.7/test/test_threading_local.pyttest_local_refss  cCs4|jƒ}g}xFt|ƒD]8}tjdtd||fƒ}|jƒ|jƒqW~tjƒ|j t |ƒ|ƒg|D]}|ƒdkr…|^q…}|j t |ƒ|d|fƒd|_ tjƒg|D]}|ƒdkrà|^qà}|j t |ƒ|d|f|t |ƒfƒdS(NR targsi(t_localtrangeRtThreadR tstarttjointgctcollectt assertEqualtlentNonetassertInt someothervar(RtnR R tittRtdeadlist((s5/usr/local/lib/python2.7/test/test_threading_local.pyRs   (   (cs´ddl‰dˆjf‡fd†ƒY}|ƒ‰‡‡fd†}g}xFtdƒD]8}tjd|d|fƒ}|jƒ|j|ƒqYWx|D]}|jƒqœWdS(NiÿÿÿÿtLocalcseZ‡fd†ZRS(csˆjdƒdS(Ng{®Gáz„?(tsleep(R(ttime(s5/usr/local/lib/python2.7/test/test_threading_local.pyt__init__9s(RRR&((R%(s5/usr/local/lib/python2.7/test/test_threading_local.pyR#8scs |ˆ_ˆjˆj|ƒdS(N(txR(R (R R(s5/usr/local/lib/python2.7/test/test_threading_local.pytf=s i R R(R%RRRRRRR(RR#R(tthreadsR R!((R RR%s5/usr/local/lib/python2.7/test/test_threading_local.pyt test_derived2s    csÌd|jfd„ƒY‰d‰tg‰tjƒ‰tjƒ‰‡‡‡‡‡fd†}tjd|ƒ}|jƒˆjƒgtdƒD]}ˆƒ^qމˆj ƒ|j ƒ|j ˆdƒdS(NR#cBseZRS((RR(((s5/usr/local/lib/python2.7/test/test_threading_local.pyR#Mscseˆƒg}|j|ƒd|d_~tjƒˆjƒˆjƒtd„ˆDƒƒˆdbs(RR,RRtsettwaittall(tcycle(R#te1te2tlocalstpassed(s5/usr/local/lib/python2.7/test/test_threading_local.pyR(Ts      R i i( RRtFalseRtEventRRR0RR/Rt assertTrue(RR(R!R ((R#R3R4R5R6s5/usr/local/lib/python2.7/test/test_threading_local.pyttest_derived_cycle_deallocKs     "  cCs‘ddlm}ddlm}xj||fD]\}d|fd„ƒY}|ddƒ|dƒ|jt|ddƒ|jt|dƒq-WdS(Niÿÿÿÿ(R(R tMyLocalcBseZd„ZRS(c_sdS(N((RRtkwargs((s5/usr/local/lib/python2.7/test/test_threading_local.pyR&xs(RRR&(((s5/usr/local/lib/python2.7/test/test_threading_local.pyR;wstai(RRt_threading_localR t assertRaisest TypeError(RR tpy_localtclsR;((s5/usr/local/lib/python2.7/test/test_threading_local.pyttest_argumentsqs  csÎdˆ_ˆƒ‰tjƒ‰tjƒ‰‡‡‡fd†}‡‡‡fd†}tjd|ƒ}|jƒˆjƒtjd|ƒ}|jƒ|jƒˆjƒ|jƒˆjˆjˆjƒdS(Ns No error message set or cleared.cs0dˆ_dˆ_ˆ`ˆjƒˆjƒdS(NR,R+(R'tyR/R0((R3R4tobj(s5/usr/local/lib/python2.7/test/test_threading_local.pytf1†s    csTy ˆj}Wntk r)dˆ_n'Xd|ˆfˆ_tjjˆjƒdS(Nts'Incorrectly got value %r from class %r (R'tAttributeErrort_failedtsyststderrtwrite(R,(tcRER(s5/usr/local/lib/python2.7/test/test_threading_local.pytf2s   R ( RIRR8RRR0RR/t assertFalse(RRMRFRNtt1tt2((RMR3R4RERs5/usr/local/lib/python2.7/test/test_threading_local.pyt_test_one_class€s           cCs|j|jƒdS(N(RRR(R((s5/usr/local/lib/python2.7/test/test_threading_local.pyttest_threading_local¤scCs*d|jfd„ƒY}|j|ƒdS(Nt LocalSubclasscBseZdZRS(s(To test that subclasses behave properly.(RRt__doc__(((s5/usr/local/lib/python2.7/test/test_threading_local.pyRT¨s(RRR(RRT((s5/usr/local/lib/python2.7/test/test_threading_local.pyttest_threading_local_subclass§scCsk|ƒ}d|_|j|jidd6ƒ|jtƒi|_WdQX|jtƒ |`WdQXdS(NiR'(R'Rt__dict__R?RH(RRBRE((s5/usr/local/lib/python2.7/test/test_threading_local.pyt_test_dict_attribute¬s  cCs|j|jƒdS(N(RXR(R((s5/usr/local/lib/python2.7/test/test_threading_local.pyttest_dict_attributeµscCs*d|jfd„ƒY}|j|ƒdS(NRTcBseZdZRS(s(To test that subclasses behave properly.(RRRU(((s5/usr/local/lib/python2.7/test/test_threading_local.pyRT¹s(RRX(RRT((s5/usr/local/lib/python2.7/test/test_threading_local.pyttest_dict_attribute_subclass¸s( RRRRR*R:RCRRRSRVRXRYRZ(((s5/usr/local/lib/python2.7/test/test_threading_local.pyRs    &  $   tThreadLocalTestcBseZejZd„ZRS(cCsjddd„ƒY}|ƒ}|jƒ|_||j_tj|ƒ}~tjƒ|j|ƒdƒdS(NtXcBseZRS((RR(((s5/usr/local/lib/python2.7/test/test_threading_local.pyR\Ãs(( RR R'R R RRtassertIsR(RR\R'twr((s5/usr/local/lib/python2.7/test/test_threading_local.pyttest_cycle_collectionÂs   (RRt_threadRR_(((s5/usr/local/lib/python2.7/test/test_threading_local.pyR[¾s tPyThreadingLocalTestcBseZejZRS((RRR>R R(((s5/usr/local/lib/python2.7/test/test_threading_local.pyRaÎscsÜtjƒ}|jtdƒƒ|jtjtƒƒ|jtjtƒƒyddlm‰Wnt k rrnYXddl ‰ˆj ‰‡‡fd†}‡‡fd†}|jtdd|d|ƒƒt j |ƒdS(NR>iÿÿÿÿ(Rcs ˆˆ_dS(N(R (ttest(RR>(s5/usr/local/lib/python2.7/test/test_threading_local.pytsetUpßscs ˆˆ_dS(N(R (Rb(R>t local_orig(s5/usr/local/lib/python2.7/test/test_threading_local.pyttearDownásRcRe(tunittestt TestSuitetaddTestRt makeSuiteR[RaRRt ImportErrorR>R Rt run_unittest(tsuiteRcRe((RR>Rds5/usr/local/lib/python2.7/test/test_threading_local.pyt test_mainÒs    t__main__((RftdoctestRRbRR Rt import_moduleR`RR>tobjectRR RtTestCaseR[RaRmR(((s5/usr/local/lib/python2.7/test/test_threading_local.pyts     ©