python (3.12.0)

(root)/
lib/
python3.12/
test/
__pycache__/
test_threading_local.cpython-312.pyc

ΑeNFddlZddlZddlmZddlmZddlmZddlm	Z	ddl
Z
ddlZddlZddl
Z
ejdGdd	eZd
ZGddZGd
dej&eZGddej&eZdZedk(rej0yy)N)DocTestSuite)support)threading_helper)
import_moduleT)moduleceZdZy)WeakN__name__
__module____qualname__M/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_threading_local.pyr	r	srr	cnt}||_|jtj|yN)r	weakappendweakrefref)localweaklistrs   rtargetrs%6DEJOOGKK%&rcZeZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
Zy)
BaseLocalTestcj|jd|jd|jdy)N2d)_local_refsselfs rtest_local_refszBaseLocalTest.test_local_refss,rc`|j}g}t|D]?}tjt||f}|j|j
A~tj|jt|||Dcgc]}||}}|jt||dz
|fd|_tj|Dcgc]}||}}|jt||dz
|f|t|fycc}wcc}w)Nrargs)
_localrange	threadingThreadrstartjoinr
gc_collectassertEquallenassertInsomeothervar)r"nrritrdeadlists        rr zBaseLocalTest._local_refs"s
q	A  eX5FGA
GGI
FFH	
X*&.@TD@@

c(mac1X."%-@TD@@

c(mac1X3x=/ABAAsD&!D&&D+3D+cddlGfddj}|fdtjfdt	dD5	dddy#1swYyxYw)NrceZdZfdZy))BaseLocalTest.test_derived.<locals>.Localc(jdy)Ng{Gz?)sleep)r"times r__init__z2BaseLocalTest.test_derived.<locals>.Local.__init__?s

4 rNrrr
r=)r<srLocalr9>s
!rr?cL|_jj|yr)xr/)r4rr"s rfz%BaseLocalTest.test_derived.<locals>.fCsEGUWWa(rc3NK|]}tj|fyw)r%N)r*r+).0r4rBs  r	<genexpr>z-BaseLocalTest.test_derived.<locals>.<genexpr>Hs-,@01-6,<,<AQD,Q,Q,@s"%
)r<r(r
start_threadsr))r"r?rBrr<s` @@@rtest_derivedzBaseLocalTest.test_derived8sb
		!DKK	!	)

+
+,@5:2Y,@@				sAA(cGdd|jddtjtjfd}tj|}|j	jt
dDcgc]	}c}j|j|jycc}w)NceZdZy)7BaseLocalTest.test_derived_cycle_dealloc.<locals>.LocalNr
rrrr?rKNrr?Fcg}|j|d|d_~tjj	jt
dDy)Nbarrc36K|]}t|dyw)fooN)hasattr)rDrs  rrEzFBaseLocalTest.test_derived_cycle_dealloc.<locals>.f.<locals>.<genexpr>dsGuWUE22Gs)rrPrr.setwaitall)cycler?e1e2localspasseds rrBz3BaseLocalTest.test_derived_cycle_dealloc.<locals>.fUsZWIELL E!HL FFHGGIGGGFrrrF)
r(r*Eventr+r,rSr)rRr-
assertTrue)	r"rBr5r4r?rVrWrXrYs	    @@@@@rtest_derived_cycle_deallocz(BaseLocalTest.test_derived_cycle_deallocLs	DKK	
__

__
	H	H"
A&		
	
$)9-a%'-
		.sCcGdd|j}|d|d|jt|jd|jt|jdy)NceZdZdZy)-BaseLocalTest.test_arguments.<locals>.MyLocalcyrr)r"r&kwargss   rr=z6BaseLocalTest.test_arguments.<locals>.MyLocal.__init__vsrNr>rrrMyLocalr`us
rrcr')a)r(assertRaises	TypeError)r"rcs  rtest_argumentszBaseLocalTest.test_argumentsssQ	dkk		!
)T[[A6)T[[!4rcd_tjtjfd}fd}tj|}|j	jtj|}|j	|j
j|j
jjjy)Nz No error message set or cleared.cfd_d_`jjy)NrPrN)rAyrRrS)rVrWobjsrf1z)BaseLocalTest._test_one_class.<locals>.f1s(CECEFFHGGIrc	j}d|dd_tjj	jy#t
$r
d_YywxYw)NzIncorrectly got value z from class 
)rA_failedsysstderrwriteAttributeError)rPcrkr"s rf2z)BaseLocalTest._test_one_class.<locals>.f2sO
/ee"%a!)

  .
"
"!
"sAAArZ)	rpr*r[r+r,rSr-rRassertFalse)	r"rurlrvt1t2rVrWrks	``    @@@r_test_one_classzBaseLocalTest._test_one_class~s9c
__

__
			/

R
(


	


R
(


	

	t||4rc:|j|jyr)rzr(r!s rtest_threading_localz"BaseLocalTest.test_threading_localsT[[)rcPGdd|j}|j|y)NceZdZdZy)BBaseLocalTest.test_threading_local_subclass.<locals>.LocalSubclass(To test that subclasses behave properly.Nrrr
__doc__rrr
LocalSubclassr:rr)r(rzr"rs  rtest_threading_local_subclassz+BaseLocalTest.test_threading_local_subclasss 	;DKK	;]+rc|}d|_|j|jddi|jt5i|_ddd|jt5|`dddy#1swY*xYw#1swYyxYw)NrA)rAr/__dict__rert)r"clsrks   r_test_dict_attributez"BaseLocalTest._test_dict_attributeseQx0


~
.	CL	


~
.							sA3'A?3A<?Bc:|j|jyr)rr(r!s rtest_dict_attributez!BaseLocalTest.test_dict_attributes!!$++.rcPGdd|j}|j|y)NceZdZdZy)ABaseLocalTest.test_dict_attribute_subclass.<locals>.LocalSubclassrNrrrrrrrrr)r(rrs  rtest_dict_attribute_subclassz*BaseLocalTest.test_dict_attribute_subclasss 	;DKK	;!!-0rcGdd}|}|j|_||j_tj|}~tj|j|y)NceZdZy).BaseLocalTest.test_cycle_collection.<locals>.XNr
rrrXrrLrr)r(rrArrrr.assertIsNone)r"rrAwrs    rtest_cycle_collectionz#BaseLocalTest.test_cycle_collectionsY		
C++-	
[[^
"$rctd}|jddtdD]}tj}|jy)N	_testcapicyrrrrr<lambda>z?BaseLocalTest.test_threading_local_clear_race.<locals>.<lambda>srFi)rcall_in_temporary_c_threadr)r*rjoin_temporary_c_thread)r"r_s   rtest_threading_local_clear_racez-BaseLocalTest.test_threading_local_clear_racesK"+.	,,\5At	"A!A	"	))+rN)rrr
r#r rHr]rgrzr|rrrrrrrrrrrsF
C,(% N	5"5H*,
/1

 	,rrc$eZdZejZy)ThreadLocalTestN)rrr
_threadr(rrrrrs
^^Frrc$eZdZejZy)PyThreadingLocalTestN)rrr
_threading_localrr(rrrrrs


#
#Frrc|jtdtjd}fd}|j	td|||S)Nrc6tjt_yr)rr(rr)tests rsetUpzload_tests.<locals>.setUps!(rct_yr)rr)r
local_origs rtearDownzload_tests.<locals>.tearDowns!+r)rr)addTestrrraddTests)loadertestspatternrrrs     @r
load_testsrsM	MM,123!''J0,	NN< 2&+h@Lr__main__)rqunittestdoctestrrrtest.supportrtest.support.import_helperrrrr*rrequires_working_threadingobjectr	rrTestCaserrrrmainrrr<module>rs
 )4,++48	6	'v,v,rh''$8,,m$zHMMOr