Author: Philip Jenvey <[email protected]>
Branch: py3k
Changeset: r61385:1a37ab162374
Date: 2013-02-17 13:05 -0800
http://bitbucket.org/pypy/pypy/changeset/1a37ab162374/

Log:    fix __module__ on many _io types

diff --git a/pypy/module/_io/interp_bufferedio.py 
b/pypy/module/_io/interp_bufferedio.py
--- a/pypy/module/_io/interp_bufferedio.py
+++ b/pypy/module/_io/interp_bufferedio.py
@@ -108,7 +108,8 @@
         space.warn("max_buffer_size is deprecated", space.w_DeprecationWarning)
 
 W_BufferedIOBase.typedef = TypeDef(
-    '_io._BufferedIOBase', W_IOBase.typedef,
+    '_BufferedIOBase', W_IOBase.typedef,
+    __module__ = "_io",
     __new__ = generic_new_descr(W_BufferedIOBase),
     read = interp2app(W_BufferedIOBase.read_w),
     read1 = interp2app(W_BufferedIOBase.read1_w),
@@ -938,7 +939,8 @@
                               'isatty'])
 
 W_BufferedRWPair.typedef = TypeDef(
-    '_io.BufferedRWPair', W_BufferedIOBase.typedef,
+    'BufferedRWPair', W_BufferedIOBase.typedef,
+    __module__ = "_io",
     __new__ = generic_new_descr(W_BufferedRWPair),
     __init__  = interp2app(W_BufferedRWPair.descr_init),
     __getstate__ = interp2app(W_BufferedRWPair.getstate_w),
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
@@ -204,6 +204,7 @@
 
 W_BytesIO.typedef = TypeDef(
     'BytesIO', W_BufferedIOBase.typedef,
+    __module__ = "_io",
     __new__ = generic_new_descr(W_BytesIO),
     __init__  = interp2app(W_BytesIO.descr_init),
 
diff --git a/pypy/module/_io/interp_fileio.py b/pypy/module/_io/interp_fileio.py
--- a/pypy/module/_io/interp_fileio.py
+++ b/pypy/module/_io/interp_fileio.py
@@ -441,6 +441,7 @@
 
 W_FileIO.typedef = TypeDef(
     'FileIO', W_RawIOBase.typedef,
+    __module__ = "_io",
     __new__  = interp2app(W_FileIO.descr_new.im_func),
     __init__  = interp2app(W_FileIO.descr_init),
     __repr__ = interp2app(W_FileIO.repr_w),
diff --git a/pypy/module/_io/interp_iobase.py b/pypy/module/_io/interp_iobase.py
--- a/pypy/module/_io/interp_iobase.py
+++ b/pypy/module/_io/interp_iobase.py
@@ -268,6 +268,7 @@
 
 W_IOBase.typedef = TypeDef(
     '_IOBase',
+    __module__ = "_io",
     __new__ = generic_new_descr(W_IOBase),
     __enter__ = interp2app(W_IOBase.enter_w),
     __exit__ = interp2app(W_IOBase.exit_w),
@@ -334,6 +335,7 @@
 
 W_RawIOBase.typedef = TypeDef(
     '_RawIOBase', W_IOBase.typedef,
+    __module__ = "_io",
     __new__ = generic_new_descr(W_RawIOBase),
 
     read = interp2app(W_RawIOBase.read_w),
diff --git a/pypy/module/_io/interp_textio.py b/pypy/module/_io/interp_textio.py
--- a/pypy/module/_io/interp_textio.py
+++ b/pypy/module/_io/interp_textio.py
@@ -179,6 +179,7 @@
 
 W_IncrementalNewlineDecoder.typedef = TypeDef(
     'IncrementalNewlineDecoder',
+    __module__ = "_io",
     __new__ = generic_new_descr(W_IncrementalNewlineDecoder),
     __init__  = interp2app(W_IncrementalNewlineDecoder.descr_init),
 
@@ -256,6 +257,7 @@
 
 W_TextIOBase.typedef = TypeDef(
     '_TextIOBase', W_IOBase.typedef,
+    __module__ = "_io",
     __new__ = generic_new_descr(W_TextIOBase),
 
     read = interp2app(W_TextIOBase.read_w),
diff --git a/pypy/module/_io/test/test_io.py b/pypy/module/_io/test/test_io.py
--- a/pypy/module/_io/test/test_io.py
+++ b/pypy/module/_io/test/test_io.py
@@ -370,3 +370,8 @@
             for protocol in range(pickle.HIGHEST_PROTOCOL + 1):
                 with _io.open(self.tmpfile, **kwargs) as f:
                     raises(TypeError, pickle.dumps, f, protocol)
+
+    def test_mod(self):
+        import _io
+        assert all(t.__module__ == '_io' for t in dir(_io)
+                   if isinstance(t, type))
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to