diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2019-12-02 20:30:09 -0500 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2019-12-02 20:31:15 -0500 |
commit | b75575fd2cf3036d00624abbfc7d94f4f0c4aba8 (patch) | |
tree | fe1b54e2eb2d7fad7502ccc07049efb9bbfc1e26 /tests/test_api.py | |
parent | ae25eefbf48b9e6897af37903ecd697eb19f337f (diff) | |
download | python-coveragepy-git-b75575fd2cf3036d00624abbfc7d94f4f0c4aba8.tar.gz |
Coverage(data_file=None) means no data file at all. #871
Diffstat (limited to 'tests/test_api.py')
-rw-r--r-- | tests/test_api.py | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/tests/test_api.py b/tests/test_api.py index 228f0147..93b6dc9a 100644 --- a/tests/test_api.py +++ b/tests/test_api.py @@ -16,7 +16,7 @@ from unittest_mixins import change_dir import coverage from coverage import env -from coverage.backward import StringIO, import_local_file +from coverage.backward import code_object, import_local_file, StringIO from coverage.data import line_counts from coverage.files import abs_file from coverage.misc import CoverageException @@ -263,6 +263,31 @@ class ApiTest(CoverageTest): self.assertFiles(["datatest5.py", "deep"]) self.assert_exists("deep/sub/cov.data") + def test_datafile_none(self): + cov = coverage.Coverage(data_file=None) + + def f1(): + a = 1 # pylint: disable=unused-variable + + one_line_number = code_object(f1).co_firstlineno + 1 + lines = [] + + def run_one_function(f): + cov.erase() + cov.start() + f() + cov.stop() + + fs = cov.get_data().measured_files() + lines.append(cov.get_data().lines(list(fs)[0])) + + run_one_function(f1) + run_one_function(f1) + run_one_function(f1) + assert lines == [[one_line_number]] * 3 + self.assert_doesnt_exist(".coverage") + assert os.listdir(".") == [] + def test_empty_reporting(self): # empty summary reports raise exception, just like the xml report cov = coverage.Coverage() |