python (3.12.0)

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

͑ePdZddlZddlZddlZddlmZddlmZ	ddlmZejZ
ejje
ejZ
dZdZdZGd	d
ZGddej$ZeD]6Zej*d
dZdeZeeeej$fdeiee<8edk(rej4yy#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)AnyDBMTestCasesPython: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#r5dkeyss    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(r6listr5r)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	rr6lenr,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)rFr6
setdefaultr+rMs  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)NrarrQrR)r.r	rr(rFr6getr)assertIsNonerBKeyErrorr+rMs  rtest_anydbm_readzAnyDBMTestCase.test_anydbm_read[sHHVS!tdjjo6vv.7!%%-(


x
(	
fI					sC  C)c|jtjtd}|j	|}|jy)NrV)r.r	rr(r8r+)r,r#r5s   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(r6r5assertInrXrSr+rMs  rtest_empty_valuezAnyDBMTestCase.test_empty_valuems3??It4
EMM0
1HHVS!2&(H:.

h"8c*x#.h/5		rc|jtjtd}dj	d}|j|||j
y)NrVrr')r.r	rr(r*rcr+rGs   rtest_anydbm_accessz!AnyDBMTestCase.test_anydbm_access{s@HHVS!jj!

c1		rcztjtjtdjyNr!)r	rrfsencoder(r+r?s rtest_open_with_bytesz#AnyDBMTestCase.test_open_with_bytess"V$c*002rcztjtjtdjyrh)r	rrFakePathr(r+r?s rtest_open_with_pathlib_pathz*AnyDBMTestCase.test_open_with_pathlib_paths$##F+S1779rctjtjt	j
tdjyrh)r	rrrlrrir(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')r8r)r6r*)r,r#r5rHs    rrFzAnyDBMTestCase.read_helpersM"::	FCTZZ_a

70C.DE	Frctjtd5|jj	gddg}|D]
\}}||<|jtj	td|D|D],\}}|j
||j||.|jd|jtfddddy#1swYyxYw)Nr!)rWb)s12345678910s019237410982340912840198242c3&K|]	\}}|ywrr)r2r-vs   rr3z+AnyDBMTestCase.test_keys.<locals>.<genexpr>s5HFQa5HsrQcdS)NrQr)r"sr<lambda>z*AnyDBMTestCase.test_keys.<locals>.<lambda>s&	r)
r	rr(r6r5r4rcassertNotInrBrZ)r,rr-rtr"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)Nra)
addCleanupsetattrr	rar<rrr?s rsetUpzAnyDBMTestCase.setUps6mS__E++)*rN)__name__
__module____qualname__r)r.r8r@rCrIrNrTr[r]rdrfrjrmrorFrxr|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)Nrar!w1)rzr{r	rarrir(rrlrr}rrr6whichdbrc)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(rrirrlrYr	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	)rzrrrimport_fresh_moduler	r?s rr|zWhichDBTestCase.setUps')* 44U;rN)	r}r~rrunittest
skipUnlessrrr|rrrrrs0?2X&:;6<6<rr	TestCase_r<__main__)__doc__rr	rtest.supportrrrrTESTFNrrjoinr(rrrrTestCaserrr}suffixtestnametypeglobalsmainrrr<module>rsC
	&"

	gy//	0

zzz'<h'''<T>0C
\\!"
F6(#Hx .0A0AB (#0GIh	0zHMMO[DsCCC