diff options
-rw-r--r-- | CHANGES.txt | 4 | ||||
-rw-r--r-- | coverage/data.py | 2 | ||||
-rw-r--r-- | test/test_coverage.py | 7 |
3 files changed, 12 insertions, 1 deletions
diff --git a/CHANGES.txt b/CHANGES.txt index e53f202e..6bfa8917 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -14,9 +14,13 @@ Version 3.3 - Added coverage.process_start to enable coverage measurement when Python starts. +- Parallel data files combined with "coverage combine" are deleted after + they're combined, to clean up unneeded files. Fixes `issue 40`_. + - Added an AUTHORS.txt file. .. _issue 39: http://bitbucket.org/ned/coveragepy/issue/39 +.. _issue 40: http://bitbucket.org/ned/coveragepy/issue/40 Version 3.2, 5 December 2009 diff --git a/coverage/data.py b/coverage/data.py index bd147756..f9d0edbd 100644 --- a/coverage/data.py +++ b/coverage/data.py @@ -180,6 +180,8 @@ class CoverageData(object): self.lines.setdefault(filename, {}).update(file_data) for filename, file_data in new_arcs.items(): self.arcs.setdefault(filename, {}).update(file_data) + if f != local: + os.remove(full_path) def add_line_data(self, line_data): """Add executed line data. diff --git a/test/test_coverage.py b/test/test_coverage.py index 7b4a41ce..772075e4 100644 --- a/test/test_coverage.py +++ b/test/test_coverage.py @@ -1726,13 +1726,18 @@ class ProcessTest(CoverageTest): # After two -p runs, there should be two .coverage.machine.123 files. self.assertEqual( - len([f for f in os.listdir('.') if f.startswith('.coverage.')]), + len([f for f in os.listdir('.') if f.startswith('.coverage')]), 2) # Combine the parallel coverage data files into .coverage . self.run_command("coverage -c") self.assertTrue(os.path.exists(".coverage")) + # After combining, there should be only the .coverage file. + self.assertEqual( + len([f for f in os.listdir('.') if f.startswith('.coverage')]), + 1) + # Read the coverage file and see that b_or_c.py has all 7 lines # executed. data = coverage.CoverageData() |