streamline tests so that they work wit pytest-2.8
This commit is contained in:
@@ -1,10 +1,29 @@
|
||||
import py
|
||||
import pytest
|
||||
import execnet
|
||||
|
||||
@pytest.fixture(scope="session", autouse=True)
|
||||
def _ensure_imports():
|
||||
# we import some modules because pytest-2.8's testdir fixture
|
||||
# will unload all modules after each test and this cause
|
||||
# (unknown) problems with execnet.Group()
|
||||
execnet.Group
|
||||
execnet.makegateway
|
||||
|
||||
pytest_plugins = "pytester"
|
||||
|
||||
#rsyncdirs = ['.', '../xdist', py.path.local(execnet.__file__).dirpath()]
|
||||
|
||||
@pytest.fixture(autouse=True)
|
||||
def _divert_atexit(request, monkeypatch):
|
||||
import atexit
|
||||
l = []
|
||||
def finish():
|
||||
while l:
|
||||
l.pop()()
|
||||
monkeypatch.setattr(atexit, "register", l.append)
|
||||
request.addfinalizer(finish)
|
||||
|
||||
def pytest_addoption(parser):
|
||||
parser.addoption('--gx',
|
||||
action="append", dest="gspecs",
|
||||
@@ -13,6 +32,13 @@ def pytest_addoption(parser):
|
||||
def pytest_funcarg__specssh(request):
|
||||
return getspecssh(request.config)
|
||||
|
||||
@pytest.fixture
|
||||
def testdir(testdir):
|
||||
# pytest before 2.8 did not have a runpytest_subprocess
|
||||
if not hasattr(testdir, "runpytest_subprocess"):
|
||||
testdir.runpytest_subprocess = testdir.runpytest
|
||||
return testdir
|
||||
|
||||
# configuration information for tests
|
||||
def getgspecs(config):
|
||||
return [execnet.XSpec(spec)
|
||||
|
||||
Reference in New Issue
Block a user