[prev in list] [next in list] [prev in thread] [next in thread]
List: pypy-svn
Subject: [pypy-commit] pypy default: Add a failing (skipped) whitebox test and a test about ctypes that fails
From: arigo <pypy.commits () gmail ! com>
Date: 2016-08-31 23:04:41
Message-ID: 57c76289.8f8e1c0a.c5d55.f980 () mx ! google ! com
[Download RAW message or body]
Author: Armin Rigo <arigo@tunes.org>
Branch:
Changeset: r86800:191a4cce5363
Date: 2016-09-01 01:04 +0200
http://bitbucket.org/pypy/pypy/changeset/191a4cce5363/
Log: Add a failing (skipped) whitebox test and a test about ctypes that
fails on -A (xfailed)
diff --git a/pypy/module/test_lib_pypy/ctypes_tests/test_numbers.py \
b/pypy/module/test_lib_pypy/ctypes_tests/test_numbers.py
--- a/pypy/module/test_lib_pypy/ctypes_tests/test_numbers.py
+++ b/pypy/module/test_lib_pypy/ctypes_tests/test_numbers.py
@@ -195,6 +195,29 @@
_fields_ = [('t', enum)]
assert isinstance(S().t, enum)
+ def test_no_missing_shape_to_ffi_type(self):
+ # whitebox test
+ import sys
+ if '__pypy__' not in sys.builtin_module_names:
+ skip("only for pypy's ctypes")
+ skip("re-enable after adding 'g' to _shape_to_ffi_type.typemap, "
+ "which I think needs fighting all the way up from "
+ "rpython.rlib.libffi")
+ from _ctypes.basics import _shape_to_ffi_type
+ from _rawffi import Array
+ for i in range(1, 256):
+ try:
+ Array(chr(i))
+ except ValueError:
+ pass
+ else:
+ assert chr(i) in _shape_to_ffi_type.typemap
+
+ @py.test.mark.xfail
+ def test_pointer_to_long_double(self):
+ import ctypes
+ ctypes.POINTER(ctypes.c_longdouble)
+
## def test_perf(self):
## check_perf()
diff --git a/rpython/rlib/libffi.py b/rpython/rlib/libffi.py
--- a/rpython/rlib/libffi.py
+++ b/rpython/rlib/libffi.py
@@ -47,6 +47,8 @@
cls.ulonglong = clibffi.cast_type_to_ffitype(rffi.ULONGLONG)
cls.signed = clibffi.cast_type_to_ffitype(rffi.SIGNED)
cls.wchar_t = clibffi.cast_type_to_ffitype(lltype.UniChar)
+ # XXX long double support: clibffi.ffi_type_longdouble, but then
+ # XXX fix the whole rest of this file to add a case for long double
del cls._import
@staticmethod
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic