From 47e8ce46fcd54bfcbcca643a3150177f4eb7cd0c Mon Sep 17 00:00:00 2001 From: Jannis Leidel Date: Mon, 24 Apr 2017 10:58:23 +0200 Subject: [PATCH 1/4] Get data_file path from Coverage config in subprocesses. Fix #145. --- src/pytest_cov/engine.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pytest_cov/engine.py b/src/pytest_cov/engine.py index bb82a377..7369bfc4 100644 --- a/src/pytest_cov/engine.py +++ b/src/pytest_cov/engine.py @@ -40,7 +40,8 @@ def set_env(self): os.environ['COV_CORE_CONFIG'] = config_file else: os.environ['COV_CORE_CONFIG'] = '' - os.environ['COV_CORE_DATAFILE'] = os.path.abspath('.coverage') + data_file = os.path.abspath('.coverage') + os.environ['COV_CORE_DATAFILE'] = getattr(self.config, 'data_file', data_file) if self.cov_branch: os.environ['COV_CORE_BRANCH'] = 'enabled' From 875735ab8f1a544ee0d6b06405d0c4994d529d25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Tue, 9 May 2017 23:49:56 +0300 Subject: [PATCH 2/4] Take the coverage data file name from Coverage's config object. Absolutize it at it end. --- src/pytest_cov/engine.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/pytest_cov/engine.py b/src/pytest_cov/engine.py index 7369bfc4..89ead76c 100644 --- a/src/pytest_cov/engine.py +++ b/src/pytest_cov/engine.py @@ -40,8 +40,7 @@ def set_env(self): os.environ['COV_CORE_CONFIG'] = config_file else: os.environ['COV_CORE_CONFIG'] = '' - data_file = os.path.abspath('.coverage') - os.environ['COV_CORE_DATAFILE'] = getattr(self.config, 'data_file', data_file) + os.environ['COV_CORE_DATAFILE'] = os.path.abspath(self.cov.config.data_file) if self.cov_branch: os.environ['COV_CORE_BRANCH'] = 'enabled' From e31a982c3b06b5f2c53526dee522cb044be1c76a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Wed, 10 May 2017 21:07:31 +0300 Subject: [PATCH 3/4] Loosen up assertion. --- tests/test_pytest_cov.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_pytest_cov.py b/tests/test_pytest_cov.py index 1a25f7bd..84b175f7 100644 --- a/tests/test_pytest_cov.py +++ b/tests/test_pytest_cov.py @@ -707,7 +707,7 @@ def test_invalid_coverage_source(testdir): else: # newer `coverage report` errors on missing importts result.stderr.fnmatch_lines([ - 'ERROR: Failed to generate report: No data to report.', + 'ERROR: Failed to generate report: No data to report.*', ]) assert result.ret != 0 From f4c53287aeaff091da40d6d05a78ae92c495a53e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ionel=20Cristian=20M=C4=83rie=C8=99?= Date: Thu, 11 May 2017 02:16:37 +0300 Subject: [PATCH 4/4] Whoops. Fix the right assertion and fix a typo. --- tests/test_pytest_cov.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/test_pytest_cov.py b/tests/test_pytest_cov.py index 84b175f7..2cdbbde0 100644 --- a/tests/test_pytest_cov.py +++ b/tests/test_pytest_cov.py @@ -698,16 +698,16 @@ def test_invalid_coverage_source(testdir): '*10 passed*' ]) result.stderr.fnmatch_lines([ - 'Coverage.py warning: No data was collected.' + 'Coverage.py warning: No data was collected.*' ]) if StrictVersion(coverage.__version__) <= StrictVersion("3.8"): # older `coverage report` doesn't error on missing imports assert result.ret == 0 else: - # newer `coverage report` errors on missing importts + # newer `coverage report` errors on missing imports result.stderr.fnmatch_lines([ - 'ERROR: Failed to generate report: No data to report.*', + 'ERROR: Failed to generate report: No data to report.', ]) assert result.ret != 0