python (3.12.0)

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

͑ePdZddlZddlZddlZddlmZddlmZ	ddlmZejZ
ejje
ejZ
dZdZdZGd	d
ZGddej$ZeD]SZej*j-d
sJej*ddZdeZeeeej$fdeiee<Uedk(rej6yy#e$rdZYwxYw)z=Test script for the dbm.open function based on testdumbdbm.pyN)
import_helper)	os_helper)ndbmc#KtjD](}	t|dg}|tj|<|*y#t$rY7wxYww)Nopen)fromlist)dbm_names
__import__ImportError_modules)namemods  A/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_dbm.pydbm_iteratorrsT

	TVH5C!T	
		s%A?A	AA
AAc6tjtyN)rrmtreedirnamercleaunup_test_dirr s
WrcJttjtyr)rosmkdirrrrrsetup_test_dirr#sHHWrceZdZdddddddZdZd	Zd
ZdZdZd
Z	dZ
dZdZdZ
dZdZdZdZdZdZdZy)AnyDBMTestCasePython:sProgrammingstheswaysGuidosintended)abcdfgctjtd}|jD]#}|j|||j	d<%|jy)Nnascii)r	r_fname_dictencodeclose)selfr$ks   rinit_dbzAnyDBMTestCase.init_db1sIHHVS!	1A#'::a=Aahhw 	1		rctd|jD}t|jj}|j|||S)Nc3>K|]}|jdyw)r(N)decode).0r.s  r	<genexpr>z-AnyDBMTestCase.keys_helper.<locals>.<genexpr>8s:Aahhw':s)sortedkeysr*assertEqual)r-r$r6dkeyss    rkeys_helperzAnyDBMTestCase.keys_helper7sB:::tzz()u%rcj|jt|jjtyr)
assertTrue
issubclassmoduleerrorOSErrorr-s r
test_errorzAnyDBMTestCase.test_error=s
4;;#4#4g>?rcj|jtjtjtyr)assertRaisesr	r>rr)r@s rtest_anydbm_not_existingz'AnyDBMTestCase.test_anydbm_not_existing@s#))SXXv6rc0tjtd}|jt	|jg|jD]#}|j|||jd<%|j||jy)Nr"r()
r	rr)r7listr6r*r+read_helperr,r-r$keys   rtest_anydbm_creationz#AnyDBMTestCase.test_anydbm_creationCsqHHVS!affh,::	5C%)ZZ_Acjj!"	5		rctjttjtd5}|jt
|ddddy#1swYyxYw)Nr'r)rcreate_empty_filer)r	rr7lenr-r$s  r8test_anydbm_creation_n_file_exists_with_invalid_contentszGAnyDBMTestCase.test_anydbm_creation_n_file_exists_with_invalid_contentsKsI##F+
XXfc
"	(aSVQ'	(	(	(sAA"c0|jtjtd}dx|jd<|d<|j||j
|jddd|j
|dd|jy)Nr"sindentedr%gxxxfoo)	r/r	rr)r*rGr7
setdefaultr,rNs  rtest_anydbm_modificationz'AnyDBMTestCase.test_anydbm_modificationQswHHVS!$//

3!D'ff5v>6F+		rc|jtjtd}|j	||j|j
d|jd|j|j
ddd|j|j
d|jt5|dddd|jy#1swYxYw)Nrar rRrS)r/r	rr)rGr7getr*assertIsNonerCKeyErrorr,rNs  rtest_anydbm_readzAnyDBMTestCase.test_anydbm_read[sHHVS!tdjjo6vv.7!%%-(


x
(	
fI					sC  C)c|jtjtd}|j	|}|jy)NrW)r/r	rr)r9r,)r-r$r6s   rtest_anydbm_keyszAnyDBMTestCase.test_anydbm_keysgs4HHVS!"		rcttjdddk(r|jdtjt
d}|j
|jgd|d<|j
|jdg|jd||j
|dd|j
|jdd|j
|jdd|jy)NlibraryzBerkeley DBzCBerkeley DB doesn't distinguish the empty value from the absent oner"rsempty)getattrr	_defaultmodskipTestrr)r7r6assertInrYrTr,rNs  rtest_empty_valuezAnyDBMTestCase.test_empty_valuems3??It4
EMM0
1HHVS!2&(H:.

h"8c*x#.h/5		rc|jtjtd}dj	d}|j||||dk(sJ|j
y)NrWr r(r)r/r	rr)r+rdr,rHs   rtest_anydbm_accessz!AnyDBMTestCase.test_anydbm_access{sOHHVS!jj!

c1v#$		rcztjtjtdjyNr")r	rrfsencoder)r,r@s rtest_open_with_bytesz#AnyDBMTestCase.test_open_with_bytess"V$c*002rcztjtjtdjyri)r	rrFakePathr)r,r@s rtest_open_with_pathlib_pathz*AnyDBMTestCase.test_open_with_pathlib_paths$##F+S1779rctjtjt	j
tdjyri)r	rrrmrrjr)r,r@s r!test_open_with_pathlib_path_bytesz0AnyDBMTestCase.test_open_with_pathlib_path_bytess-##BKK$78#>DDFrc|j|}|jD]3}|j|j|||jd5y)Nr()r9r*r7r+)r-r$r6rIs    rrGzAnyDBMTestCase.read_helpersM"::	FCTZZ_a

70C.DE	Frctjtd5|jj	gddg}|D]
\}}||<|jtj	td|D|D],\}}|j
||j||.|jd|jtfddddy#1swYyxYw)Nr")rXb)s12345678910s019237410982340912840198242c3&K|]	\}}|ywrr)r3r.vs   rr4z+AnyDBMTestCase.test_keys.<locals>.<genexpr>s5HFQa5HsrRcdS)NrRr)r#sr<lambda>z*AnyDBMTestCase.test_keys.<locals>.<lambda>s&	r)
r	rr)r7r6r5rdassertNotInrCr[)r-r r.rur#s    @r	test_keyszAnyDBMTestCase.test_keyss
XXfc
"
	;aQVVXr*OPA
1!
VAFFH-v5Ha5H/HI
*1

a#  1q)
*
VQ'h(9:
	;
	;
	;sC	C..C7c|jttdtj|jt_|jt
t
y)Nrb)
addCleanupsetattrr	rbr=rrr@s rsetUpzAnyDBMTestCase.setUps6mS__E++)*rN)__name__
__module____qualname__r*r/r9rArDrJrOrUr\r^rergrkrnrprGryr}rrrrr(ss 
E@7(
3:GF
;rrcLeZdZdZej
eddZdZy)WhichDBTestCasec|jttdtjt	j
t}ttjt|tj|g}tD]}|j}t|t_|jtd5ddd|D]-}|j||jj|/|jtd5}d|d<|jd||j|ddddd|D]-}|j||jj|/y#1swYxYw#1swYJxYw)Nrbr"w1)r{r|r	rbrrjr)rrmrr~rrr7whichdbrd)r-_bytes_fnamefnamesr=rpathr$s       rtest_whichdbzWhichDBTestCase.test_whichdbsDmS__E{{6*),,V4	 2 2< @B"n	?F??D$COVS)//
?  txx'7'7'=>
?VS)
0Q$

dA&  4$/
0
?  txx'7'7'=>
?#	?
0/
0
0s<E7
-F7F	F	zTest requires ndbm)reasoncPttdzd5dddtjt}tt	j
t|t	j
|g}|D],}|j
|jj|.y#1swYxYw)Nz.dbwb)	rr)rrjrrmrZr	r)r-rrrs    rtest_whichdb_ndbmz!WhichDBTestCase.test_whichdb_ndbms&5.$
'--{{6*),,V4	 2 2< @B	6Ddhh..t45	6		.-sBB%cv|jtttjd|_y)Nr	)r{rrrimport_fresh_moduler	r@s rr}zWhichDBTestCase.setUps')* 44U;rN)	r~rrrunittest
skipUnlessrrr}rrrrrs0?2X&:;6<6<rrzdbm.	TestCase_r=__main__)__doc__rr	rtest.supportrrrrTESTFNrrjoinr)rrrrTestCaserrr~
startswithsuffixtestnametypeglobalsmainrrr<module>rsC
	&"

	gy//	0

zzz'<h'''<T>0C<<""6**
\\!"
F6(#Hx .0A0AB (#0GIh	0zHMMO[DsC11C;:C;