Explicitly close some files (from issue #10093)
diff --git a/Lib/test/test_argparse.py b/Lib/test/test_argparse.py
index cf0f8e4..f01c65f 100644
--- a/Lib/test/test_argparse.py
+++ b/Lib/test/test_argparse.py
@@ -4160,7 +4160,8 @@
def _test_module_encoding(self, path):
path, _ = os.path.splitext(path)
path += ".py"
- codecs.open(path, 'r', 'utf8').read()
+ with codecs.open(path, 'r', 'utf8') as f:
+ f.read()
def test_argparse_module_encoding(self):
self._test_module_encoding(argparse.__file__)
diff --git a/Lib/test/test_xml_etree.py b/Lib/test/test_xml_etree.py
index 8079b84..7914d1f 100644
--- a/Lib/test/test_xml_etree.py
+++ b/Lib/test/test_xml_etree.py
@@ -602,10 +602,13 @@
<ns0:empty-element />
</ns0:root>
+ >>> with open(SIMPLE_XMLFILE) as f:
+ ... data = f.read()
+
>>> parser = ET.XMLParser()
>>> parser.version # doctest: +ELLIPSIS
'Expat ...'
- >>> parser.feed(open(SIMPLE_XMLFILE).read())
+ >>> parser.feed(data)
>>> print(serialize(parser.close()))
<root>
<element key="value">text</element>
@@ -614,7 +617,7 @@
</root>
>>> parser = ET.XMLTreeBuilder() # 1.2 compatibility
- >>> parser.feed(open(SIMPLE_XMLFILE).read())
+ >>> parser.feed(data)
>>> print(serialize(parser.close()))
<root>
<element key="value">text</element>
@@ -624,7 +627,7 @@
>>> target = ET.TreeBuilder()
>>> parser = ET.XMLParser(target=target)
- >>> parser.feed(open(SIMPLE_XMLFILE).read())
+ >>> parser.feed(data)
>>> print(serialize(parser.close()))
<root>
<element key="value">text</element>
@@ -727,7 +730,8 @@
end-ns None
>>> events = ("start", "end", "bogus")
- >>> context = iterparse(SIMPLE_XMLFILE, events)
+ >>> with open(SIMPLE_XMLFILE, "rb") as f:
+ ... iterparse(f, events)
Traceback (most recent call last):
ValueError: unknown event 'bogus'
@@ -779,6 +783,8 @@
"""
Test parser w. custom builder.
+ >>> with open(SIMPLE_XMLFILE) as f:
+ ... data = f.read()
>>> class Builder:
... def start(self, tag, attrib):
... print("start", tag)
@@ -788,7 +794,7 @@
... pass
>>> builder = Builder()
>>> parser = ET.XMLParser(target=builder)
- >>> parser.feed(open(SIMPLE_XMLFILE, "r").read())
+ >>> parser.feed(data)
start root
start element
end element
@@ -798,6 +804,8 @@
end empty-element
end root
+ >>> with open(SIMPLE_NS_XMLFILE) as f:
+ ... data = f.read()
>>> class Builder:
... def start(self, tag, attrib):
... print("start", tag)
@@ -811,7 +819,7 @@
... print("comment", repr(data))
>>> builder = Builder()
>>> parser = ET.XMLParser(target=builder)
- >>> parser.feed(open(SIMPLE_NS_XMLFILE, "r").read())
+ >>> parser.feed(data)
pi pi 'data'
comment ' comment '
start {namespace}root
@@ -829,7 +837,8 @@
"""
Test Element.getchildren()
- >>> tree = ET.parse(open(SIMPLE_XMLFILE, "rb"))
+ >>> with open(SIMPLE_XMLFILE, "rb") as f:
+ ... tree = ET.parse(f)
>>> for elem in tree.getroot().iter():
... summarize_list(elem.getchildren())
['element', 'element', 'empty-element']