[pypy-commit] pypy ffistruct: test _as_ffi_pointer_ in type_converter
antocuni
noreply at buildbot.pypy.org
Mon Nov 21 00:11:49 CET 2011
Author: Antonio Cuni <anto.cuni at gmail.com>
Branch: ffistruct
Changeset: r49590:77f79b80d773
Date: 2011-11-12 17:30 +0100
http://bitbucket.org/pypy/pypy/changeset/77f79b80d773/
Log: test _as_ffi_pointer_ in type_converter
diff --git a/pypy/module/_ffi/test/test_type_converter.py b/pypy/module/_ffi/test/test_type_converter.py
--- a/pypy/module/_ffi/test/test_type_converter.py
+++ b/pypy/module/_ffi/test/test_type_converter.py
@@ -56,5 +56,21 @@
# no good reason, at interp-level Signed or Unsigned makes no
# difference for passing bits around)
self.check(app_types.void_p, self.space.wrap(42), 42)
- self.check(
- app_types.void_p, self.space.wrap(sys.maxint+1), -sys.maxint-1)
+ self.check(app_types.void_p, self.space.wrap(sys.maxint+1),
+ -sys.maxint-1)
+
+ def test__as_ffi_pointer_(self):
+ space = self.space
+ w_MyPointerWrapper = space.appexec([], """():
+ import _ffi
+ class MyPointerWrapper(object):
+ def __init__(self, value):
+ self.value = value
+ def _as_ffi_pointer_(self, ffitype):
+ assert ffitype is _ffi.types.void_p
+ return self.value
+
+ return MyPointerWrapper
+ """)
+ w_obj = space.call_function(w_MyPointerWrapper, space.wrap(42))
+ self.check(app_types.void_p, w_obj, 42)
More information about the pypy-commit
mailing list