[pypy-issue] [issue1621] CPyExt: PyObject_GetItem() fails on NumPyPy array objects

Yury V. Zaytsev tracker at bugs.pypy.org
Wed Oct 9 17:42:54 CEST 2013


Yury V. Zaytsev <yury at shurup.com> added the comment:

Test:

$ hg diff
diff -r 798905aca6f1 pypy/module/cpyext/test/test_cpyext.py
--- a/pypy/module/cpyext/test/test_cpyext.py	Wed Oct 09 10:51:55 2013 +0200
+++ b/pypy/module/cpyext/test/test_cpyext.py	Wed Oct 09 17:42:20 2013 +0200
@@ -99,7 +99,7 @@
 class LeakCheckingTest(object):
     """Base class for all cpyext tests."""
     spaceconfig = dict(usemodules=['cpyext', 'thread', '_rawffi', 'array',
-                                   'itertools', 'rctime', 'binascii'])
+                                   'itertools', 'rctime', 'binascii',
'micronumpy'])
     spaceconfig['std.withmethodcache'] = True
 
     enable_leak_checking = True
diff -r 798905aca6f1 pypy/module/cpyext/test/test_object.py
--- a/pypy/module/cpyext/test/test_object.py	Wed Oct 09 10:51:55 2013 +0200
+++ b/pypy/module/cpyext/test/test_object.py	Wed Oct 09 17:42:20 2013 +0200
@@ -92,6 +92,12 @@
         assert api.PyErr_Occurred() is space.w_KeyError
         api.PyErr_Clear()
 
+    def test_getitem_numpypy(self, space, api):
+        w_obj = space.appexec([], """():
+            import numpypy as np
+            return np.array((1,2,3))""")
+        assert space.unwrap(api.PyObject_GetItem(w_obj, space.wrap(1))) == 2
+
     def test_size(self, space, api):
         assert api.PyObject_Size(space.newlist([space.w_None])) == 1

________________________________________
PyPy bug tracker <tracker at bugs.pypy.org>
<https://bugs.pypy.org/issue1621>
________________________________________


More information about the pypy-issue mailing list