diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2009-03-12 08:01:07 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2009-03-12 08:01:07 -0400 |
commit | 97acd0683f04102041818d79388e2535ac00f0c7 (patch) | |
tree | 590f04fea917fdfc5c955d4dbc7e72bdd3cdd342 /coverage/control.py | |
parent | eb90554e67ca7dc4f170244e67740265b9ac3218 (diff) | |
download | python-coveragepy-git-97acd0683f04102041818d79388e2535ac00f0c7.tar.gz |
Move format_lines into misc.py since it doesn't need to be a method of coverage.
Diffstat (limited to 'coverage/control.py')
-rw-r--r-- | coverage/control.py | 36 |
1 files changed, 2 insertions, 34 deletions
diff --git a/coverage/control.py b/coverage/control.py index 8a38fffe..63c0980b 100644 --- a/coverage/control.py +++ b/coverage/control.py @@ -3,7 +3,7 @@ import os, re, sys from coverage.data import CoverageData -from coverage.misc import nice_pair, CoverageException +from coverage.misc import format_lines, CoverageException from coverage.codeunit import code_unit_factory from coverage.files import FileLocator @@ -137,38 +137,6 @@ class coverage: self.analysis_cache[code_unit.filename] = result return result - def format_lines(self, statements, lines): - """Nicely format a list of line numbers. - - Format a list of line numbers for printing by coalescing groups of - lines as long as the lines represent consecutive statements. This will - coalesce even if there are gaps between statements. - - For example, if `statements` is [1,2,3,4,5,10,11,12,13,14] and - `lines` is [1,2,5,10,11,13,14] then the result will be "1-2, 5-11, 13-14". - - """ - - pairs = [] - i = 0 - j = 0 - start = None - pairs = [] - while i < len(statements) and j < len(lines): - if statements[i] == lines[j]: - if start == None: - start = lines[j] - end = lines[j] - j = j + 1 - elif start: - pairs.append((start, end)) - start = None - i = i + 1 - if start: - pairs.append((start, end)) - ret = ', '.join(map(nice_pair, pairs)) - return ret - # Backward compatibility with version 1. def analysis(self, morf): f, s, _, m, mf = self.analysis2(morf) @@ -198,7 +166,7 @@ class coverage: missing.append(line) return (filename, statements, excluded, missing, - self.format_lines(statements, missing)) + format_lines(statements, missing)) # Programmatic entry point def report(self, morfs, show_missing=True, ignore_errors=False, file=None): |