ACC SHELL

Path : /usr/lib/python/bsddb/test/
File Upload :
Current File : //usr/lib/python/bsddb/test/test_lock.pyc

Ñò
q&ÄMc	@sòdZddkZddkZddklZlZlZlZlZl	Z	eoXddk
lZddkZei
ddjoddk
lZq«ddk
lZnd	eifd
„ƒYZd„Zedjoeid
dƒndS(s/
TestCases for testing the locking sub-system.
iÿÿÿÿN(tdbttest_supporttverbosethave_threadstget_new_environment_pathtget_new_database_path(tThreadii(t
currentThread(tcurrent_threadtLockingTestCasecBsneZddkZeid d
jodd„Znd„Zd„Zd	„Zd
„Z	d„Z
d„ZRS(iÿÿÿÿNiiiicCs|i|d|ƒdS(Ntmsg(t
failUnless(tselftexprR
((s*/usr/lib/python2.6/bsddb/test/test_lock.pyt
assertTruescCsMtƒ|_tiƒ|_|ii|ititiBtiBti	BƒdS(N(
RthomeDirRtDBEnvtenvtopent	DB_THREADt
DB_INIT_MPOOLtDB_INIT_LOCKt	DB_CREATE(R((s*/usr/lib/python2.6/bsddb/test/test_lock.pytsetUpscCs!|iiƒti|iƒdS(N(RtcloseRtrmtreeR(R((s*/usr/lib/python2.6/bsddb/test/test_lock.pyttearDown#s
cCs±to dGddGHd|iiGHn|iiƒ}to
d|GHn|ii|dtiƒ}to
d|GHn|ii|ƒto
d|GHn|ii	|ƒdS(	Ns
s-=isRunning %s.test01_simple...s
locker ID: %sssome locked thingsAquired lock: %ssReleased lock: %s(
Rt	__class__t__name__Rtlock_idtlock_getRt
DB_LOCK_WRITEtlock_puttlock_id_free(RtanIDtlock((s*/usr/lib/python2.6/bsddb/test/test_lock.pyt
test01_simple(s



cCsîto dGddGHd|iiGHng}|itd|idtifƒƒ|itd|idtifƒƒ|itd|idtifƒƒ|itd|idtifƒƒ|itd|idtifƒƒ|itd|idtifƒƒ|itd|idtifƒƒ|itd|idtifƒƒ|itd|idtifƒƒxR|D]J}ddk	}|i
dd	jo|itƒn
t|_
|iƒqWx|D]}|iƒqÖWdS(
Ns
s-=isRunning %s.test02_threaded...ttargettargsiÿÿÿÿii(RRRtappendRt	theThreadRRtDB_LOCK_READtsystversion_infot	setDaemontTruetdaemontstarttjoin(RtthreadsttR*((s*/usr/lib/python2.6/bsddb/test/test_lock.pyttest02_threaded9s@
	csöˆiidtiƒˆiidtiƒˆiidtiƒˆiidtiƒ‡‡fd†‰tˆ_dˆ_tdˆƒ}ddk	}|i
ddjo|itƒn
t|_
|iƒˆiidtiƒˆiiƒ}ˆiiƒ}ˆi||ƒˆii|d	tiƒ}tiƒ}ˆitiˆii|d	tiƒtiƒ}tˆ_ˆi||d
jƒˆii|ƒ|iƒˆii|ƒˆii|ƒtiƒd
joˆiˆidjƒndS(Nii@âiËdxcs\xUˆipJˆiitiƒˆ_ˆioxˆipq2WPntidƒqWdS(Ng{®Gáz„?(tendRtlock_detectRtDB_LOCK_EXPIREtcountttimetsleep((Rtdeadlock_detection(s*/usr/lib/python2.6/bsddb/test/test_lock.pyR:bs


R%iÿÿÿÿii †sshared lockg‰ÒÞà“¹?ii(ii(Rtset_timeoutRtDB_SET_LOCK_TIMEOUTtDB_SET_TXN_TIMEOUTtFalseR4R7RR*R+R,R-R.R/RtassertNotEqualRRR8tassertRaisestDBLockNotGrantedErrorR)RR R0R!tversion(RR2R*R"tanID2R#t
start_timetend_time((RR:s*/usr/lib/python2.6/bsddb/test/test_lock.pyttest03_lock_timeout\s<
			
	
cCsddk}|iddjotƒiƒ}n
tƒi}|tijo
d}nd}|iiƒ}t	od||fGHnxvt
dƒD]h}|ii|d|ƒ}t	od	|||fGHn|ii|ƒt	od
|||fGHq•q•W|ii
|ƒdS(Niÿÿÿÿiitwritetreads%s: locker ID: %sièssome locked things%s: Aquired %s lock: %ss%s: Released %s lock: %s(R*R+RtgetNametnameRRRRRtxrangeRR R!(RtlockTypeR*RJtltR"tiR#((s*/usr/lib/python2.6/bsddb/test/test_lock.pyR(‰s&

(iii(Rt
__module__R*R+tNoneRRRR$R3RFR((((s*/usr/lib/python2.6/bsddb/test/test_lock.pyR	s				#	-cCsJtiƒ}to|ititƒƒn|ititdƒƒ|S(Nttest01(tunittestt	TestSuiteRtaddTestt	makeSuiteR	(tsuite((s*/usr/lib/python2.6/bsddb/test/test_lock.pyt
test_suite§s
t__main__tdefaultTestRW(t__doc__R8RRttest_allRRRRRRt	threadingRR*R+RRtTestCaseR	RWRtmain(((s*/usr/lib/python2.6/bsddb/test/test_lock.pyt<module>s.’	


ACC SHELL 2018