[pypy-svn] r49542 - in pypy/branch/pypy-interp-file/module/_file: . test
arigo at codespeak.net
arigo at codespeak.net
Fri Dec 7 22:34:06 CET 2007
Author: arigo
Date: Fri Dec 7 22:34:05 2007
New Revision: 49542
Modified:
pypy/branch/pypy-interp-file/module/_file/interp_file.py
pypy/branch/pypy-interp-file/module/_file/test/test_file_extra.py
Log:
Two more checks for a closed file.
Modified: pypy/branch/pypy-interp-file/module/_file/interp_file.py
==============================================================================
--- pypy/branch/pypy-interp-file/module/_file/interp_file.py (original)
+++ pypy/branch/pypy-interp-file/module/_file/interp_file.py Fri Dec 7 22:34:05 2007
@@ -93,6 +93,7 @@
stream.close()
def direct_fileno(self):
+ self.getstream() # check if the file is still open
return self.fd
def direct_flush(self):
@@ -200,6 +201,7 @@
direct_xreadlines = direct___iter__
def direct_isatty(self):
+ self.getstream() # check if the file is still open
return os.isatty(self.fd)
# ____________________________________________________________
Modified: pypy/branch/pypy-interp-file/module/_file/test/test_file_extra.py
==============================================================================
--- pypy/branch/pypy-interp-file/module/_file/test/test_file_extra.py (original)
+++ pypy/branch/pypy-interp-file/module/_file/test/test_file_extra.py Fri Dec 7 22:34:05 2007
@@ -508,3 +508,23 @@
ref().write('hello')
assert f.tell() == 5
f.close()
+
+ def test_ValueError(self):
+ fn = self.temptestfile
+ f = open(fn, 'wb')
+ f.close()
+ raises(ValueError, f.fileno)
+ raises(ValueError, f.flush)
+ raises(ValueError, f.isatty)
+ raises(ValueError, f.next)
+ raises(ValueError, f.read)
+ raises(ValueError, f.readline)
+ raises(ValueError, f.readlines)
+ raises(ValueError, f.seek, 0)
+ raises(ValueError, f.tell)
+ raises(ValueError, f.truncate)
+ raises(ValueError, f.write, "")
+ raises(ValueError, f.writelines, [])
+ raises(ValueError, iter, f)
+ raises(ValueError, f.xreadlines)
+ f.close() # accepted as a no-op
More information about the Pypy-commit
mailing list