diff options
author | Stefan Behnel <stefan_ml@behnel.de> | 2018-10-22 20:59:39 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-22 20:59:39 +0200 |
commit | 336d8ca7489887a6582b3b997f374fc47de8133b (patch) | |
tree | e7e12eb7c2cf434d92a208d53a9a5fe1fe099c9b | |
parent | cc02495da4e5186845ae6e5d754faf92cff6335b (diff) | |
parent | d46b06fc0f98ff23a4d5736505258c6c335bdcc7 (diff) | |
download | cython-336d8ca7489887a6582b3b997f374fc47de8133b.tar.gz |
Merge pull request #2674 from jdemeyer/master
Fix reimport_from_subinterpreter test when PYTHONPATH is set
-rwxr-xr-x | runtests.py | 5 | ||||
-rw-r--r-- | tests/run/reimport_from_subinterpreter.srctree | 9 |
2 files changed, 10 insertions, 4 deletions
diff --git a/runtests.py b/runtests.py index e30c5982f..69cc1db7c 100755 --- a/runtests.py +++ b/runtests.py @@ -1734,7 +1734,10 @@ class EndToEndTest(unittest.TestCase): .replace("PYTHON", sys.executable)) old_path = os.environ.get('PYTHONPATH') env = dict(os.environ) - env['PYTHONPATH'] = self.cython_syspath + os.pathsep + (old_path or '') + new_path = self.cython_syspath + if old_path: + new_path = new_path + os.pathsep + old_path + env['PYTHONPATH'] = new_path cmd = [] out = [] err = [] diff --git a/tests/run/reimport_from_subinterpreter.srctree b/tests/run/reimport_from_subinterpreter.srctree index 98b159981..22b62517e 100644 --- a/tests/run/reimport_from_subinterpreter.srctree +++ b/tests/run/reimport_from_subinterpreter.srctree @@ -59,11 +59,14 @@ def run_sub(): assert 0 == run_in_subinterpreter(b'1+1') assert 0 == run_in_subinterpreter(b'2+2') - assert 0 == run_in_subinterpreter(b'import package') - assert 0 == run_in_subinterpreter(b'import package') + # The subinterpreter does not add the current working directory to + # sys.path, so we need to add it manually. + pre = b'import sys; sys.path.insert(0, "."); ' + assert 0 == run_in_subinterpreter(pre + b'import package') + assert 0 == run_in_subinterpreter(pre + b'import package') import sys - result = run_in_subinterpreter(b'import package.subtest') + result = run_in_subinterpreter(pre + b'import package.subtest') if not MAIN_HAS_IMPORTED: assert result == 0, result # imports only in subinterpreters are ok elif sys.version_info >= (3, 5): |