Author: Armin Rigo <[email protected]>
Branch: cpyext-avoid-roundtrip
Changeset: r92718:67a15f1e9e7b
Date: 2017-10-11 15:01 +0200
http://bitbucket.org/pypy/pypy/changeset/67a15f1e9e7b/
Log: fix tests
diff --git a/pypy/module/cpyext/test/test_classobject.py
b/pypy/module/cpyext/test/test_classobject.py
--- a/pypy/module/cpyext/test/test_classobject.py
+++ b/pypy/module/cpyext/test/test_classobject.py
@@ -5,6 +5,7 @@
PyClass_Check, PyClass_New, PyInstance_Check, PyInstance_New,
PyInstance_NewRaw, _PyInstance_Lookup)
from pypy.module.cpyext.object import PyObject_GetAttr
+from pypy.module.cpyext.pyobject import get_w_obj_and_decref
class TestClassObject(BaseApiTest):
def test_newinstance(self, space):
@@ -44,13 +45,14 @@
""")
assert PyInstance_Check(space, w_instance)
- assert PyObject_GetAttr(space, w_instance, space.wrap('x')) is
space.w_None
+ py_obj = PyObject_GetAttr(space, w_instance, space.wrap('x'))
+ assert get_w_obj_and_decref(space, py_obj) is space.w_None
assert _PyInstance_Lookup(space, w_instance, space.wrap('x')) is
space.w_None
assert _PyInstance_Lookup(space, w_instance, space.wrap('y')) is None
# getattr returns a bound method
- assert not isinstance(
- PyObject_GetAttr(space, w_instance, space.wrap('f')), Function)
+ py_obj = PyObject_GetAttr(space, w_instance, space.wrap('f'))
+ assert not isinstance(get_w_obj_and_decref(space, py_obj), Function)
# _PyInstance_Lookup returns the raw descriptor
assert isinstance(
_PyInstance_Lookup(space, w_instance, space.wrap('f')), Function)
diff --git a/pypy/module/cpyext/test/test_eval.py
b/pypy/module/cpyext/test/test_eval.py
--- a/pypy/module/cpyext/test/test_eval.py
+++ b/pypy/module/cpyext/test/test_eval.py
@@ -14,6 +14,7 @@
_PyEval_SliceIndex)
from pypy.module.cpyext.api import (
c_fopen, c_fclose, c_fileno, Py_ssize_tP, is_valid_fd)
+from pypy.module.cpyext.pyobject import get_w_obj_and_decref
from pypy.interpreter.gateway import interp2app
from pypy.interpreter.error import OperationError
from pypy.interpreter.astcompiler import consts
@@ -117,8 +118,8 @@
assert run("a = 42 * 43", Py_single_input,
w_globals, w_globals) == space.w_None
- assert 42 * 43 == space.unwrap(
- PyObject_GetItem(space, w_globals, space.wrap("a")))
+ py_obj = PyObject_GetItem(space, w_globals, space.wrap("a"))
+ assert 42 * 43 == space.unwrap(get_w_obj_and_decref(space, py_obj))
def test_run_string_flags(self, space):
flags = lltype.malloc(PyCompilerFlags, flavor='raw')
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit