[pypy-commit] pypy use-file-star-for-file: expose file._setbufsize
bdkearns
noreply at buildbot.pypy.org
Thu Sep 11 04:53:07 CEST 2014
Author: Brian Kearns <bdkearns at gmail.com>
Branch: use-file-star-for-file
Changeset: r73439:cb5bd9b58319
Date: 2014-09-10 22:46 -0400
http://bitbucket.org/pypy/pypy/changeset/cb5bd9b58319/
Log: expose file._setbufsize
diff --git a/pypy/module/_file/interp_file.py b/pypy/module/_file/interp_file.py
--- a/pypy/module/_file/interp_file.py
+++ b/pypy/module/_file/interp_file.py
@@ -231,6 +231,10 @@
def direct_isatty(self):
return self.getstream().isatty()
+ @unwrap_spec(bufsize=int)
+ def descr_setbufsize(self, bufsize):
+ self.getstream()._setbufsize(bufsize)
+
# ____________________________________________________________
#
# The 'file_' methods are the one exposed to app-level.
@@ -520,6 +524,7 @@
__repr__ = interp2app(W_File.file__repr__),
readinto = interp2app(W_File.file_readinto),
writelines = interp2app(W_File.file_writelines),
+ _setbufsize = interp2app(W_File.descr_setbufsize),
__exit__ = interp2app(W_File.file__exit__),
__weakref__ = make_weakref_descr(W_File),
**dict([(name, interp2app(getattr(W_File, 'file_' + name)))
diff --git a/pypy/module/_file/test/test_file.py b/pypy/module/_file/test/test_file.py
--- a/pypy/module/_file/test/test_file.py
+++ b/pypy/module/_file/test/test_file.py
@@ -453,6 +453,16 @@
s = os.read(f.fileno(), 10)
assert s == 'bar\n'
+ import sys
+ if '__pypy__' in sys.builtin_module_names:
+ with self.file(self.temppath, 'rb') as f:
+ f._setbufsize(0)
+ s = f.readline()
+ assert s == 'foo\n'
+ s = os.read(f.fileno(), 10)
+ assert s == 'bar\n'
+
+
def test_flush_at_exit():
from pypy import conftest
from pypy.tool.option import make_config, make_objspace
More information about the pypy-commit
mailing list