diff options
Diffstat (limited to 'testing/cffi1')
-rw-r--r-- | testing/cffi1/test_cffi_binary.py | 8 | ||||
-rw-r--r-- | testing/cffi1/test_re_python.py | 4 | ||||
-rw-r--r-- | testing/cffi1/test_verify1.py | 4 |
3 files changed, 10 insertions, 6 deletions
diff --git a/testing/cffi1/test_cffi_binary.py b/testing/cffi1/test_cffi_binary.py index 7cfbace..45421ed 100644 --- a/testing/cffi1/test_cffi_binary.py +++ b/testing/cffi1/test_cffi_binary.py @@ -1,10 +1,11 @@ import py, sys, os import _cffi_backend +from testing.support import is_musl def test_no_unknown_exported_symbols(): if not hasattr(_cffi_backend, '__file__'): py.test.skip("_cffi_backend module is built-in") - if not sys.platform.startswith('linux'): + if not sys.platform.startswith('linux') or is_musl: py.test.skip("linux-only") g = os.popen("objdump -T '%s'" % _cffi_backend.__file__, 'r') for line in g: @@ -17,6 +18,9 @@ def test_no_unknown_exported_symbols(): name = line.split()[-1] if name.startswith('_') or name.startswith('.'): continue - if name not in ('init_cffi_backend', 'PyInit__cffi_backend'): + # a statically-linked libffi will always appear here without header hackage, ignore it if it's internal + if name.startswith('ffi_') and 'Base' in line: + continue + if name not in ('init_cffi_backend', 'PyInit__cffi_backend', 'cffistatic_ffi_call'): raise Exception("Unexpected exported name %r" % (name,)) g.close() diff --git a/testing/cffi1/test_re_python.py b/testing/cffi1/test_re_python.py index 2ae0dd1..45dd70c 100644 --- a/testing/cffi1/test_re_python.py +++ b/testing/cffi1/test_re_python.py @@ -3,7 +3,7 @@ import py from cffi import FFI from cffi import recompiler, ffiplatform, VerificationMissing from testing.udir import udir -from testing.support import u +from testing.support import u, is_musl def setup_module(mod): @@ -269,7 +269,7 @@ def test_selfref(): def test_dlopen_handle(): import _cffi_backend from re_python_pysrc import ffi - if sys.platform == 'win32': + if sys.platform == 'win32' or is_musl: py.test.skip("uses 'dl' explicitly") ffi1 = FFI() ffi1.cdef("""void *dlopen(const char *filename, int flags); diff --git a/testing/cffi1/test_verify1.py b/testing/cffi1/test_verify1.py index 33244cc..45df2b3 100644 --- a/testing/cffi1/test_verify1.py +++ b/testing/cffi1/test_verify1.py @@ -4,7 +4,7 @@ from cffi import FFI, FFIError, VerificationError, VerificationMissing, model from cffi import CDefError from cffi import recompiler from testing.support import * -from testing.support import _verify, extra_compile_args +from testing.support import _verify, extra_compile_args, is_musl import _cffi_backend lib_m = ['m'] @@ -1571,7 +1571,7 @@ def test_keepalive_ffi(): assert func() == 42 def test_FILE_stored_in_stdout(): - if not sys.platform.startswith('linux'): + if not sys.platform.startswith('linux') or is_musl: py.test.skip("likely, we cannot assign to stdout") ffi = FFI() ffi.cdef("int printf(const char *, ...); FILE *setstdout(FILE *);") |