summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Behnel <stefan_ml@behnel.de>2018-08-24 10:48:04 +0200
committerStefan Behnel <stefan_ml@behnel.de>2018-08-24 10:48:04 +0200
commit3b1ad192b961d3404615e7a4c83205cd1f0cf33f (patch)
tree2f46d05272f8672cd819b49debb0587faec836c6
parent1a6b81d763ccc125497159da6c67a90bcdb43d30 (diff)
downloadcython-3b1ad192b961d3404615e7a4c83205cd1f0cf33f.tar.gz
Try to fix a test under MacOS.
-rw-r--r--tests/run/scanner_trace.srctree26
1 files changed, 18 insertions, 8 deletions
diff --git a/tests/run/scanner_trace.srctree b/tests/run/scanner_trace.srctree
index be68e4d6f..bbf7cc976 100644
--- a/tests/run/scanner_trace.srctree
+++ b/tests/run/scanner_trace.srctree
@@ -9,16 +9,26 @@ import Cython.Compiler.Scanning
Cython.Compiler.Scanning.trace_scanner = 1
-setup(
- ext_modules = cythonize("*.pyx")
-)
+setup(ext_modules=cythonize("*.pyx"))
+
+try:
+ from importlib.util import spec_from_file_location, module_from_spec
+except ImportError:
+ # Py<=3.4
+ # Try to import from the current directory.
+ import os, sys
+ sys.path.insert(0, os.getcwd())
+ import simple
+else:
+ # Py3.5+
+ import glob
+ ext_files = glob.glob("simple*.so") + glob.glob("simple*.pyd")
+ assert ext_files
+ spec = spec_from_file_location('simple', ext_files[0])
+ simple = module_from_spec(spec)
+ spec.loader.exec_module(simple)
-# Make sure we can import from the current directory.
-import os
-import sys
-sys.path.insert(0, os.getcwd())
-import simple
assert simple.test() == 123