|
Orion Poplawski |
c04741d |
diff -up pytest-cov-2.2.0/tests/test_pytest_cov.py.xdist pytest-cov-2.2.0/tests/test_pytest_cov.py
|
|
Orion Poplawski |
c04741d |
--- pytest-cov-2.2.0/tests/test_pytest_cov.py.xdist 2015-10-03 07:33:53.000000000 -0600
|
|
Orion Poplawski |
c04741d |
+++ pytest-cov-2.2.0/tests/test_pytest_cov.py 2015-10-05 09:07:26.548035911 -0600
|
|
Orion Poplawski |
c04741d |
@@ -124,6 +124,12 @@ def test_run_target():
|
|
Orion Poplawski |
7e71bb9 |
p.join()
|
|
Orion Poplawski |
7e71bb9 |
'''
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+try:
|
|
Orion Poplawski |
7e71bb9 |
+ import xdist
|
|
Orion Poplawski |
7e71bb9 |
+ HAS_XDIST = True
|
|
Orion Poplawski |
7e71bb9 |
+except:
|
|
Orion Poplawski |
7e71bb9 |
+ HAS_XDIST = False
|
|
Orion Poplawski |
7e71bb9 |
+
|
|
Orion Poplawski |
7e71bb9 |
SCRIPT_FAIL = '''
|
|
Orion Poplawski |
7e71bb9 |
def test_fail():
|
|
Orion Poplawski |
7e71bb9 |
assert False
|
|
Orion Poplawski |
c04741d |
@@ -135,7 +141,11 @@ SCRIPT2_RESULT = '3 * 100%'
|
|
Orion Poplawski |
c04741d |
CHILD_SCRIPT_RESULT = '[56] * 100%'
|
|
Orion Poplawski |
7e71bb9 |
PARENT_SCRIPT_RESULT = '8 * 100%'
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
-xdist = pytest.mark.parametrize('opts', ['', '-n 1'], ids=['nodist', 'xdist'])
|
|
Orion Poplawski |
7e71bb9 |
+try:
|
|
Orion Poplawski |
7e71bb9 |
+ import xdist
|
|
Orion Poplawski |
7e71bb9 |
+ xdist = pytest.mark.parametrize('opts', ['', '-n 1'], ids=['nodist', 'xdist'])
|
|
Orion Poplawski |
7e71bb9 |
+except:
|
|
Orion Poplawski |
7e71bb9 |
+ xdist = pytest.mark.parametrize('opts', [''], ids=['nodist'])
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
def test_central(testdir):
|
|
Orion Poplawski |
c04741d |
@@ -291,6 +301,7 @@ show_missing = true
|
|
Orion Poplawski |
7e71bb9 |
assert result.ret == 0
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_no_cov_on_fail(testdir):
|
|
Orion Poplawski |
7e71bb9 |
script = testdir.makepyfile(SCRIPT_FAIL)
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
c04741d |
@@ -304,6 +315,7 @@ def test_no_cov_on_fail(testdir):
|
|
Orion Poplawski |
7e71bb9 |
result.stdout.fnmatch_lines(['*1 failed*'])
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_dist_combine_racecondition(testdir):
|
|
Orion Poplawski |
7e71bb9 |
script = testdir.makepyfile("""
|
|
Orion Poplawski |
7e71bb9 |
import pytest
|
|
Orion Poplawski |
c04741d |
@@ -330,6 +342,7 @@ def test_foo(foo):
|
|
Orion Poplawski |
7e71bb9 |
assert result.ret == 0
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_dist_collocated(testdir):
|
|
Orion Poplawski |
7e71bb9 |
script = testdir.makepyfile(SCRIPT)
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
c04741d |
@@ -349,6 +362,7 @@ def test_dist_collocated(testdir):
|
|
Orion Poplawski |
7e71bb9 |
assert result.ret == 0
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_dist_not_collocated(testdir):
|
|
Orion Poplawski |
7e71bb9 |
script = testdir.makepyfile(SCRIPT)
|
|
Orion Poplawski |
7e71bb9 |
dir1 = testdir.mkdir('dir1')
|
|
Orion Poplawski |
c04741d |
@@ -438,6 +452,7 @@ omit =
|
|
Orion Poplawski |
7e71bb9 |
assert result.ret == 0
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_dist_subprocess_collocated(testdir):
|
|
Orion Poplawski |
7e71bb9 |
scripts = testdir.makepyfile(parent_script=SCRIPT_PARENT,
|
|
Orion Poplawski |
7e71bb9 |
child_script=SCRIPT_CHILD)
|
|
Orion Poplawski |
c04741d |
@@ -459,6 +474,7 @@ def test_dist_subprocess_collocated(test
|
|
Orion Poplawski |
7e71bb9 |
assert result.ret == 0
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_dist_subprocess_not_collocated(testdir, tmpdir):
|
|
Orion Poplawski |
7e71bb9 |
scripts = testdir.makepyfile(parent_script=SCRIPT_PARENT,
|
|
Orion Poplawski |
7e71bb9 |
child_script=SCRIPT_CHILD)
|
|
Orion Poplawski |
c04741d |
@@ -504,6 +520,7 @@ def test_empty_report(testdir):
|
|
Orion Poplawski |
7e71bb9 |
assert not matching_lines
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_dist_missing_data(testdir):
|
|
Orion Poplawski |
7e71bb9 |
venv_path = os.path.join(str(testdir.tmpdir), 'venv')
|
|
Orion Poplawski |
7e71bb9 |
virtualenv.create_environment(venv_path)
|
|
Orion Poplawski |
c04741d |
@@ -616,6 +633,7 @@ def test_cover_conftest(testdir):
|
|
Orion Poplawski |
7e71bb9 |
result.stdout.fnmatch_lines([CONF_RESULT])
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_cover_looponfail(testdir, monkeypatch):
|
|
Orion Poplawski |
7e71bb9 |
testdir.makepyfile(mod=MODULE)
|
|
Orion Poplawski |
7e71bb9 |
testdir.makeconftest(CONFTEST)
|
|
Orion Poplawski |
c04741d |
@@ -634,6 +652,7 @@ def test_cover_looponfail(testdir, monke
|
|
Orion Poplawski |
7e71bb9 |
)
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_cover_conftest_dist(testdir):
|
|
Orion Poplawski |
7e71bb9 |
testdir.makepyfile(mod=MODULE)
|
|
Orion Poplawski |
7e71bb9 |
testdir.makeconftest(CONFTEST)
|
|
Orion Poplawski |
c04741d |
@@ -683,6 +702,7 @@ def test_coveragerc(testdir):
|
|
Orion Poplawski |
7e71bb9 |
result.stdout.fnmatch_lines(['test_coveragerc* %s' % EXCLUDED_RESULT])
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_coveragerc_dist(testdir):
|
|
Orion Poplawski |
7e71bb9 |
testdir.makefile('', coveragerc=COVERAGERC)
|
|
Orion Poplawski |
7e71bb9 |
script = testdir.makepyfile(EXCLUDED_TEST)
|
|
Orion Poplawski |
c04741d |
@@ -729,7 +749,7 @@ def test_foo():
|
|
Orion Poplawski |
7e71bb9 |
SCRIPT_SIMPLE_RESULT = '4 * 100%'
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
-@pytest.mark.skipif('sys.platform == "win32"')
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif('sys.platform == "win32" or not HAS_XDIST')
|
|
Orion Poplawski |
7e71bb9 |
def test_dist_boxed(testdir):
|
|
Orion Poplawski |
7e71bb9 |
script = testdir.makepyfile(SCRIPT_SIMPLE)
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
c04741d |
@@ -805,6 +825,7 @@ data_file = %s
|
|
Orion Poplawski |
7e71bb9 |
assert glob.glob(str(testdir.tmpdir.join('some/special/place/coverage-data*')))
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
|
|
Orion Poplawski |
7e71bb9 |
+@pytest.mark.skipif("not HAS_XDIST")
|
|
Orion Poplawski |
7e71bb9 |
def test_external_data_file_xdist(testdir):
|
|
Orion Poplawski |
7e71bb9 |
script = testdir.makepyfile(SCRIPT)
|
|
Orion Poplawski |
7e71bb9 |
testdir.tmpdir.join('.coveragerc').write("""
|