mirror of
https://github.com/python/cpython.git
synced 2025-08-30 21:48:47 +00:00
Add __enter__ and __exit__ methods to addbase() so that it supports with.
This change also adds a minimal unittest of urllib.response.addbase. More are needed, but not to cover the small change being made here. Addresses http://bugs.python.org/issue5418
This commit is contained in:
parent
81fac43918
commit
b476d59792
2 changed files with 50 additions and 0 deletions
|
@ -40,6 +40,14 @@ class addbase(object):
|
|||
if self.fp: self.fp.close()
|
||||
self.fp = None
|
||||
|
||||
def __enter__(self):
|
||||
if self.fp is None:
|
||||
raise ValueError("I/O operation on closed file")
|
||||
return self
|
||||
|
||||
def __exit__(self, type, value, traceback):
|
||||
self.close()
|
||||
|
||||
class addclosehook(addbase):
|
||||
"""Class to add a close hook to an open file."""
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue