# HG changeset patch # User mgood # Date 1197584065 0 # Node ID b15e6eec8422f410b449c578cfe318078dc868b5 # Parent dad562913fde28e38f27c0e5e0771da3b7808716 extract the code for filtering coverage files so it can be reused diff --git a/bitten/util/testrunner.py b/bitten/util/testrunner.py --- a/bitten/util/testrunner.py +++ b/bitten/util/testrunner.py @@ -163,19 +163,7 @@ buf.seek(0) fileobj = open(self.coverage_summary, 'w') try: - for idx, line in enumerate(buf): - if idx < 2 or line.startswith('--'): - fileobj.write(line) - continue - parts = line.split() - name = parts[0] - if name not in sys.modules: - fileobj.write(line) - continue - filename = os.path.normpath(sys.modules[name].__file__) - if filename.endswith('.pyc') or filename.endswith('.pyo'): - filename = filename[:-1] - fileobj.write(line.rstrip() + ' ' + filename + '\n') + filter_coverage(buf, fileobj) finally: fileobj.close() @@ -227,6 +215,24 @@ return e.code +def filter_coverage(infile, outfile): + for idx, line in enumerate(infile): + if idx < 2 or line.startswith('--'): + outfile.write(line) + continue + parts = line.split() + name = parts[0] + if name == 'TOTAL': + continue + if name not in sys.modules: + outfile.write(line) + continue + filename = os.path.normpath(sys.modules[name].__file__) + if filename.endswith('.pyc') or filename.endswith('.pyo'): + filename = filename[:-1] + outfile.write(line.rstrip() + ' ' + filename + '\n') + + def main(): from distutils.dist import Distribution from optparse import OptionParser