diff options
author | Ronny Pfannschmidt <opensource@ronnypfannschmidt.de> | 2016-09-17 20:27:18 +0200 |
---|---|---|
committer | Ronny Pfannschmidt <opensource@ronnypfannschmidt.de> | 2016-09-17 20:27:18 +0200 |
commit | 441bd5a80fd5b388afbf508c0e79cf2004ee8be0 (patch) | |
tree | 74baed3d9a1daa2ecd8d4bb3f00ff1e47c9f88d4 /tests/test_interpreters.py | |
parent | a39a9a8bb07849bfbfa3a9321e194a6b783d6e5f (diff) | |
download | tox-issue352.tar.gz |
clean out source files and link to new repoissue352
Diffstat (limited to 'tests/test_interpreters.py')
-rw-r--r-- | tests/test_interpreters.py | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/tests/test_interpreters.py b/tests/test_interpreters.py deleted file mode 100644 index c658380..0000000 --- a/tests/test_interpreters.py +++ /dev/null @@ -1,112 +0,0 @@ -import sys -import os - -import pytest -from tox.interpreters import * # noqa -from tox.config import get_plugin_manager - - -@pytest.fixture -def interpreters(): - pm = get_plugin_manager() - return Interpreters(hook=pm.hook) - - -@pytest.mark.skipif("sys.platform != 'win32'") -def test_locate_via_py(monkeypatch): - class PseudoPy: - def sysexec(self, *args): - assert args[0] == '-3.2' - assert args[1] == '-c' - # Return value needs to actually exist! - return sys.executable - - @staticmethod - def ret_pseudopy(name): - assert name == 'py' - return PseudoPy() - # Monkeypatch py.path.local.sysfind to return PseudoPy - monkeypatch.setattr(py.path.local, 'sysfind', ret_pseudopy) - assert locate_via_py('3', '2') == sys.executable - - -def test_tox_get_python_executable(): - class envconfig: - basepython = sys.executable - envname = "pyxx" - p = tox_get_python_executable(envconfig) - assert p == py.path.local(sys.executable) - for ver in [""] + "2.4 2.5 2.6 2.7 3.0 3.1 3.2 3.3".split(): - name = "python%s" % ver - if sys.platform == "win32": - pydir = "python%s" % ver.replace(".", "") - x = py.path.local("c:\%s" % pydir) - print(x) - if not x.check(): - continue - else: - if not py.path.local.sysfind(name): - continue - envconfig.basepython = name - p = tox_get_python_executable(envconfig) - assert p - popen = py.std.subprocess.Popen([str(p), '-V'], - stderr=py.std.subprocess.PIPE) - stdout, stderr = popen.communicate() - assert ver in py.builtin._totext(stderr, "ascii") - - -def test_find_executable_extra(monkeypatch): - @staticmethod - def sysfind(x): - return "hello" - monkeypatch.setattr(py.path.local, "sysfind", sysfind) - - class envconfig: - basepython = "1lk23j" - envname = "pyxx" - - t = tox_get_python_executable(envconfig) - assert t == "hello" - - -def test_run_and_get_interpreter_info(): - name = os.path.basename(sys.executable) - info = run_and_get_interpreter_info(name, sys.executable) - assert info.version_info == tuple(sys.version_info) - assert info.name == name - assert info.executable == sys.executable - - -class TestInterpreters: - - def test_get_executable(self, interpreters): - class envconfig: - basepython = sys.executable - envname = "pyxx" - - x = interpreters.get_executable(envconfig) - assert x == sys.executable - info = interpreters.get_info(envconfig) - assert info.version_info == tuple(sys.version_info) - assert info.executable == sys.executable - assert info.runnable - - def test_get_executable_no_exist(self, interpreters): - class envconfig: - basepython = "1lkj23" - envname = "pyxx" - assert not interpreters.get_executable(envconfig) - info = interpreters.get_info(envconfig) - assert not info.version_info - assert info.name == "1lkj23" - assert not info.executable - assert not info.runnable - - def test_get_sitepackagesdir_error(self, interpreters): - class envconfig: - basepython = sys.executable - envname = "123" - info = interpreters.get_info(envconfig) - s = interpreters.get_sitepackagesdir(info, "") - assert s |