Author: Antonio Cuni <[email protected]>
Branch: cpyext-avoid-roundtrip
Changeset: r92731:aab2478d4f85
Date: 2017-10-12 10:29 +0200
http://bitbucket.org/pypy/pypy/changeset/aab2478d4f85/
Log: call PyTuple_New from here
diff --git a/pypy/module/cpyext/test/test_tupleobject.py
b/pypy/module/cpyext/test/test_tupleobject.py
--- a/pypy/module/cpyext/test/test_tupleobject.py
+++ b/pypy/module/cpyext/test/test_tupleobject.py
@@ -7,7 +7,7 @@
from rpython.rlib.debug import FatalError
from pypy.module.cpyext.tupleobject import (
PyTupleObject, PyTuple_Check, PyTuple_SetItem, PyTuple_Size)
-
+from pypy.module.cpyext.state import State
class TestTupleObject(BaseApiTest):
@@ -22,17 +22,19 @@
PyTuple_Size(space, space.newlist([]))
def test_tuple_realize_refuses_nulls(self, space, api):
- py_tuple = api.PyTuple_New(1)
+ state = space.fromcache(State)
+ py_tuple = state.C.PyTuple_New(1)
py.test.raises(FatalError, from_ref, space, py_tuple)
decref(space, py_tuple)
def test_tuple_resize(self, space, api):
+ state = space.fromcache(State)
w_42 = space.wrap(42)
w_43 = space.wrap(43)
w_44 = space.wrap(44)
ar = lltype.malloc(PyObjectP.TO, 1, flavor='raw')
- py_tuple = api.PyTuple_New(3)
+ py_tuple = state.C.PyTuple_New(3)
# inside py_tuple is an array of "PyObject *" items which each hold
# a reference
rffi.cast(PyTupleObject, py_tuple).c_ob_item[0] = make_ref(space, w_42)
@@ -45,7 +47,7 @@
assert space.int_w(space.getitem(w_tuple, space.wrap(1))) == 43
decref(space, ar[0])
- py_tuple = api.PyTuple_New(3)
+ py_tuple = state.C.PyTuple_New(3)
rffi.cast(PyTupleObject, py_tuple).c_ob_item[0] = make_ref(space, w_42)
rffi.cast(PyTupleObject, py_tuple).c_ob_item[1] = make_ref(space, w_43)
rffi.cast(PyTupleObject, py_tuple).c_ob_item[2] = make_ref(space, w_44)
@@ -64,7 +66,8 @@
lltype.free(ar, flavor='raw')
def test_setitem(self, space, api):
- py_tuple = api.PyTuple_New(2)
+ state = space.fromcache(State)
+ py_tuple = state.C.PyTuple_New(2)
api.PyTuple_SetItem(py_tuple, 0, make_ref(space, space.wrap(42)))
api.PyTuple_SetItem(py_tuple, 1, make_ref(space, space.wrap(43)))
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit