summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2021-11-20 10:05:38 -0500
committerNed Batchelder <ned@nedbatchelder.com>2021-11-20 12:05:02 -0500
commit65b87ffe4bcc83f798951cb5a32747cdd224ed42 (patch)
tree0dcf41d14c1c68a8e2ddd73b04dc62657c34f0fe
parent97eba39c1fa2c7791da6ed644fee28666d948a33 (diff)
downloadpython-coveragepy-git-65b87ffe4bcc83f798951cb5a32747cdd224ed42.tar.gz
refactor(test): make_data_file is a helper for making data files
-rw-r--r--tests/coveragetest.py10
-rw-r--r--tests/test_api.py11
-rw-r--r--tests/test_cmdline.py25
3 files changed, 27 insertions, 19 deletions
diff --git a/tests/coveragetest.py b/tests/coveragetest.py
index 52b0a6ab..80bcdfc0 100644
--- a/tests/coveragetest.py
+++ b/tests/coveragetest.py
@@ -213,6 +213,16 @@ class CoverageTest(
return cov
+ def make_data_file(self, basename=None, suffix=None, lines=None, file_tracers=None):
+ """Write some data into a coverage data file."""
+ data = coverage.CoverageData(basename=basename, suffix=suffix)
+ if lines:
+ data.add_lines(lines)
+ if file_tracers:
+ data.add_file_tracers(file_tracers)
+ data.write()
+ return data
+
@contextlib.contextmanager
def assert_warnings(self, cov, warnings, not_warnings=()):
"""A context manager to check that particular warnings happened in `cov`.
diff --git a/tests/test_api.py b/tests/test_api.py
index a76fe3b9..2665c34c 100644
--- a/tests/test_api.py
+++ b/tests/test_api.py
@@ -479,10 +479,13 @@ class ApiTest(CoverageTest):
# https://github.com/nedbat/coveragepy/issues/649
# The order of the [paths] setting matters
def make_data_file():
- data = coverage.CoverageData(".coverage.1")
- data.add_lines({abs_file('ci/girder/g1.py'): range(10)})
- data.add_lines({abs_file('ci/girder/plugins/p1.py'): range(10)})
- data.write()
+ self.make_data_file(
+ basename=".coverage.1",
+ lines={
+ abs_file('ci/girder/g1.py'): range(10),
+ abs_file('ci/girder/plugins/p1.py'): range(10),
+ },
+ )
def get_combined_filenames():
cov = coverage.Coverage()
diff --git a/tests/test_cmdline.py b/tests/test_cmdline.py
index 952dc47b..ab4b9e20 100644
--- a/tests/test_cmdline.py
+++ b/tests/test_cmdline.py
@@ -15,7 +15,6 @@ import coverage
import coverage.cmdline
from coverage import env
from coverage.config import CoverageConfig
-from coverage.data import CoverageData
from coverage.exceptions import _ExceptionDuringRun
from coverage.version import __url__
@@ -827,13 +826,13 @@ class CmdLineWithFilesTest(BaseCmdLineTest):
run_in_temp_dir = True
def test_debug_data(self):
- data = CoverageData()
- data.add_lines({
- "file1.py": range(1, 18),
- "file2.py": range(1, 24),
- })
- data.add_file_tracers({"file1.py": "a_plugin"})
- data.write()
+ data = self.make_data_file(
+ lines={
+ "file1.py": range(1, 18),
+ "file2.py": range(1, 24),
+ },
+ file_tracers={"file1.py": "a_plugin"},
+ )
self.command_line("debug data")
assert self.stdout() == textwrap.dedent(f"""\
@@ -846,7 +845,7 @@ class CmdLineWithFilesTest(BaseCmdLineTest):
""")
def test_debug_data_with_no_data_file(self):
- data = CoverageData()
+ data = self.make_data_file()
self.command_line("debug data")
assert self.stdout() == textwrap.dedent(f"""\
-- data ------------------------------------------------------
@@ -855,12 +854,8 @@ class CmdLineWithFilesTest(BaseCmdLineTest):
""")
def test_debug_combinable_data(self):
- data1 = CoverageData()
- data1.add_lines({"file1.py": range(1, 18), "file2.py": [1]})
- data1.write()
- data2 = CoverageData(suffix="123")
- data2.add_lines({"file2.py": range(1, 10)})
- data2.write()
+ data1 = self.make_data_file(lines={"file1.py": range(1, 18), "file2.py": [1]})
+ data2 = self.make_data_file(suffix="123", lines={"file2.py": range(1, 10)})
self.command_line("debug data")
assert self.stdout() == textwrap.dedent(f"""\