[pypy-commit] pypy default: test and fix for BytesIO.__init__()

bdkearns noreply at buildbot.pypy.org
Fri Apr 12 19:16:09 CEST 2013


Author: Brian Kearns <bdkearns at gmail.com>
Branch: 
Changeset: r63284:61d35aaefb02
Date: 2013-04-12 13:14 -0400
http://bitbucket.org/pypy/pypy/changeset/61d35aaefb02/

Log:	test and fix for BytesIO.__init__()

diff --git a/pypy/module/_io/interp_bytesio.py b/pypy/module/_io/interp_bytesio.py
--- a/pypy/module/_io/interp_bytesio.py
+++ b/pypy/module/_io/interp_bytesio.py
@@ -15,6 +15,7 @@
         self.init()
 
     def descr_init(self, space, w_initial_bytes=None):
+        self.init()
         if not space.is_none(w_initial_bytes):
             self.write_w(space, w_initial_bytes)
             self.seek(0)
diff --git a/pypy/module/_io/test/test_bytesio.py b/pypy/module/_io/test/test_bytesio.py
--- a/pypy/module/_io/test/test_bytesio.py
+++ b/pypy/module/_io/test/test_bytesio.py
@@ -4,6 +4,15 @@
     def test_init(self):
         import _io
         raises(TypeError, _io.BytesIO, u"12345")
+        buf = "1234567890"
+        b = _io.BytesIO(buf)
+        assert b.getvalue() == buf
+        b = _io.BytesIO(None)
+        assert b.getvalue() == ""
+        b.__init__(buf * 2)
+        assert b.getvalue() == buf * 2
+        b.__init__(buf)
+        assert b.getvalue() == buf
 
     def test_init_kwargs(self):
         import _io


More information about the pypy-commit mailing list