Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitb5009c2

Browse files
committed
sax: Test method xml.sax.expatreader.ExpatParser.flush
1 parent9713068 commitb5009c2

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

‎Lib/test/test_sax.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
fromioimportBytesIO,StringIO
2020
importcodecs
2121
importos.path
22+
importpyexpat
2223
importshutil
2324
importsys
2425
fromurllib.errorimportURLError
@@ -1214,6 +1215,30 @@ def test_expat_incremental_reset(self):
12141215

12151216
self.assertEqual(result.getvalue(),start+b"<doc>text</doc>")
12161217

1218+
deftest_expat_incremental_reparse_deferral(self):
1219+
result=BytesIO()
1220+
xmlgen=XMLGenerator(result)
1221+
parser=create_parser()
1222+
parser.setContentHandler(xmlgen)
1223+
1224+
# This artificial chunking triggers reparse deferral with Expat >=2.6.0
1225+
parser.feed("<doc ")
1226+
parser.feed(">")
1227+
1228+
ifpyexpat.version_info>= (2,6,0):
1229+
self.assertEqual(result.getvalue(),start)
1230+
else:
1231+
self.assertEqual(result.getvalue(),start+b"<doc>")
1232+
1233+
parser.flush()# no-op for Expat <2.6.0
1234+
1235+
self.assertEqual(result.getvalue(),start+b"<doc>")
1236+
1237+
parser.feed("</doc>")
1238+
parser.close()
1239+
1240+
self.assertEqual(result.getvalue(),start+b"<doc></doc>")
1241+
12171242
# ===== Locator support
12181243

12191244
deftest_expat_locator_noinfo(self):

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp