GpSSKrSSKrSSKJr SSKJrJr SSKJrJ r J r J r J r J r \R"S5r\r"SS\R"5r\S:Xa\R("5 gg) N)support) cpython_only import_helper)TESTFNTESTFN_NONASCIIFakePathcreate_empty_filetemp_dirunlinkzdbm.gnuc \rSrSr\S5rSrSr\S5r Sr Sr Sr S r S rS rS rS rSrSrSr\R,"\S5S5rSrSrSrSrSr\R>"SSSSSSS5S5r S r!g!)"TestGdbm cz[R(aSSKJn [ SU35 gg![ a gf=f)Nr) _GDBM_VERSIONzgdbm version: )rverbose_gdbmrprint ImportError)versions 8/opt/alt/python313/lib64/python3.13/test/test_dbm_gnu.py setUpClassTestGdbm.setUpClass s; ?? 2:wi01   s - ::cSUlgNgselfs rsetUpTestGdbm.setUps cpURbURR5 [[5 gr)rcloser filenamers rtearDownTestGdbm.tearDowns! 66  FFLLNxr!c[R[S5Ul[R "U[ UR55 gNc)gdbmopenr$rrcheck_disallow_instantiationtypers rtest_disallow_instantiation$TestGdbm.test_disallow_instantiations.8S),,T4<@r!c[R[S5UlUR URR 5/5 SURS'SURS'SURS'[ URR 55nUR U[ /SQ55 URSUR5 URS UR5 UR URSS5 URR5nU(aFURX!5 URU5 URRU5nU(aMFUR URRS 5S 5 URURRS 55 UR URRS S 5S 5 UR[5 URS  SSS5 UR URRS S 5S 5 UR URS S 5 g!,(df  NZ=f)Nr)ba019237410982340912840198242 12345678910sdatabytes)ar5s 12345678910r6bsxxxsfooxxx)r*r+r$r assertEqualkeyssetassertInfirstkeyremovenextkeyget assertIsNone assertRaisesKeyError setdefault)rkey_setkeys rtest_key_methodsTestGdbm.test_key_methods%s8S) +s =}"xdffkkm$ #&F"GH c466" dDFF# )73ffoo MM# ' NN3 &&..%Cc D)40 $&&**V,- FF3V<   x ( FF5M) **66:FC 0) (s I// I=c^[[5 TR[R[R [S5 [R [S5TlTR R5 TR[RU4Sj5 TR[RS5 g)Nrr)c">TRS$)Nr2rrsr0TestGdbm.test_error_conditions..Es dffSkr!cR[R[S5R5$)Nrx)r*r+r$r#r!rrLrMGsdii$.G.M.M.Or!)r r$rBr*errorr+rr#rs`rtest_error_conditionsTestGdbm.test_error_conditions>spx $**dii3?8S)   $**&9: $**&OPr!c[[R5nU[S5- n[U5H<n[R [ U5UlUR R5 M> U[S5- nUHGnUH>n[R [ X5-5UlUR R5 M@ MI g)Nfsucrwn)r;r* open_flagssortedr+r$rr#)rallmodesmodeflagsflags r test_flagsTestGdbm.test_flagsIs$//"c%j 5MDYYx.DF FFLLN" c&k!D8T[9 r!cj[R[S5Ul[R R [5n[US5nSU-URS'[R R [5nURX15 URS UR[R R [5U5 URR5 [R R [5nURXC5 URXA5 g)Nr)i'x) r*r+r$rospathgetsizemax assertGreaterr9 reorganize assertLessassertGreaterEqual)rsize0 value_sizesize1size2s rtest_reorganizeTestGdbm.test_reorganizeYs8S)) & J&s ) 5( FF3K 2E: ) % -r!c[R[S5nSUS'SSS5 [R[S5nUR[ UR 55S/5 SSS5 UR [R5nWR 5 SSS5 UR[WR5S5 g!,(df  N=f!,(df  N}=f!,(df  NV=f)Nr)zcontext managerzgdbm context managerrJsgdbm context managerz#GDBM object has already been closed) r*r+r$r9listr:rBrQstr exception)rdbcms rtest_context_managerTestGdbm.test_context_managerns YYx %):B% &&YYx %   T"'')_/F.G H&  tzz *b GGI+ R\\*> @& %& %+ *s#C+C%C6 C"% C36 Dc[R[S5nUR[ U55 SSS5 g!,(df  g=fr()r*r+r$ assertFalseboolrrts rtest_bool_emptyTestGdbm.test_bool_emptyzs0 YYx %   T"X && % %s ? A c[R[S5nSUS'UR[ U55 SSS5 g!,(df  g=fNr)r1r2)r*r+r$ assertTruerzr{s rtest_bool_not_emptyTestGdbm.test_bool_not_empty~s7 YYx %BsG OODH %& % %s A Ac[R[S5nSUS'SSS5 UR[R[ W5 g!,(df  N4=fr)r*r+r$rBrQrzr{s rtest_bool_on_closed_db_raises&TestGdbm.test_bool_on_closed_db_raisess? YYx %BsG& $**dB/& %s A Ac[R[S5nSUS'SSS5 [R[S5nUR[ UR 55S/5 UR SU;5 URUSS5 SSS5 g!,(df  N=f!,(df  g=f)Nr)s bytes value s bytes key rJ)r*r+r$r9rqr:rr{s r test_bytesTestGdbm.test_bytess YYx %$7B !& YYx %   T"'')_/@.A B OO-3 4   R 124G H& %& % % %sB AB1 B.1 B?cb[R[S5nSUS'SSS5 [R[S5nUR[ UR 55SR 5/5 URSR 5U;5 URSU;5 URUSR 5SR 55 URUSSR 55 SSS5 g!,(df  N=f!,(df  g=f)Nr)uUnicode value 🐍uUnicode key 🐍rJ)r*r+r$r9rqr:encoderr{s r test_unicodeTestGdbm.test_unicodes YYx %+EB' (& YYx %   T"'')_/G/N/N/P.Q R OO4;;=C D OO4: ;   R 8 ? ? AB7>>@ B   R 897>>@ B & %& % % %sDCD  D D.cJ[R[S5nSUS'SSS5 [R[S5nUR[R5 US SSS5 UR[R5 US SSS5 UR[R5 SUS'SSS5 SSS5 g!,(df  N=f!,(df  N=f!,(df  Nf=f!,(df  NJ=f!,(df  g=f)Nr)s bytes values bytes keyrJs not exist keysnot exist value)r*r+r$rBrQr{s rtest_write_readonly_file!TestGdbm.test_write_readonly_files YYx %-B| & YYx %""4::.'(/""4::.|$/""4::.'9#$/ & %& %/..... & %s_C D#C!''DC2'D9D?D C! C/ +D2 D <D D D D"z*requires OS support of non-ASCII encodingsc[nUR[U5 [R US5nSUS'SSS5 UR [ RRU55 [R US5nUR[UR55S/5 UR SU;5 URUSS5 SSS5 g!,(df  N=f!,(df  g=f)Nr)svalueskeyrJ) r addCleanupr r*r+rrbrcexistsr9rqr:)rr$rts rtest_nonascii_filenameTestGdbm.test_nonascii_filenames# ) YYx %!BvJ& x01 YYx %   T"'')_vh 7 OOFbL )   RZ 2& %& %& %sC"AC3" C03 Dc:SnUR[R5n[RU5 SSS5 UR U[ WR 55 URUR RU5 g!,(df  NZ=f)Nznonexisting-file) rBr*rQr+r<rrrsr9r$)rnonexisting_filerus rtest_nonexisting_fileTestGdbm.test_nonexisting_filesj-   tzz *b II& '+ &BLL(9: ..0@A+ *s B  Bcf[R[[5S5R 5 gr()r*r+rr$r#rs rtest_open_with_pathlib_path$TestGdbm.test_open_with_pathlib_paths (8$c*002r!c|[R[R"[5S5R 5 gr()r*r+rbfsencoder$r#rs rtest_open_with_bytes_path"TestGdbm.test_open_with_bytes_paths" "++h'-335r!c[R[[R"[ 55S5R 5 gr()r*r+rrbrr$r#rs r!test_open_with_pathlib_bytes_path*TestGdbm.test_open_with_pathlib_bytes_paths' (2;;x0137==?r!cSS/n[R[S5nUHup4XBU'URX25 M UR [ U5[ U55 UR 5 UHup4URX25 M UR [ U5S5 SSS5 g!,(df  g=f)N)foobar)12345678r)r)r*r+r$r<r9lenclear assertNotIn)rkvsrtkvs r test_clearTestGdbm.test_clears/0 YYx %1 a$   SWc#h / HHJ  '   SWa (& % %s B B44 CLC_ALLzfr_FR.iso88591z ja_JP.sjisz zh_CN.gbkz fr_FR.utf8z en_US.utf8c[5n[[RR US55 UR [ R[ R[S5 SSS5 g!,(df  g=f)NtestrJ) r r rbrcjoinrBr*rQr+r$)rds rtest_localized_errorTestGdbm.test_localized_errorsHZ1 bggll1f5 6   djj$))Xs CZZs AA22 BrN)"__name__ __module__ __qualname____firstlineno__ staticmethodrrr%rr.rGrRr^rnrvr|rrrrrunittest skipUnlessrrrrrrrrrun_with_localer__static_attributes__rPr!rr r s22 AA 12 Q .* @'& 0 I B :EG 3G 3B36@ ) , l  D  Dr!r __main__)rbrrr test.supportrrtest.support.os_helperrrrr r r import_moduler*r$TestCaser rmainrPr!rrsc 4II""9- NDx  NDb z MMOr!