X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/e7eb3a2744aa45179daea235800753d3d1955338..c2f519409c8d38f59e169abfc39bc97586222f85:/scripts/format-gcov-report diff --git a/scripts/format-gcov-report b/scripts/format-gcov-report index e162395..93ace17 100755 --- a/scripts/format-gcov-report +++ b/scripts/format-gcov-report @@ -31,6 +31,9 @@ def sgmlquotechar(c): def sgmlquote(s): return string.join(map(sgmlquotechar, s),'') +def line_count(f): + return len(open(f, "r").readlines()) + missing = {} percent = {} total_lines = 0 @@ -64,6 +67,10 @@ for line in sys.stdin: covered_lines += this_lines * this_pc / 100.0 name = None +for m in missing: + percent[m] = 0 + total_lines += line_count(m) + def cmp(a,b): if percent[a] < percent[b]: return -1 elif percent[a] > percent[b]: return 1 @@ -80,22 +87,35 @@ if len(keys): if htmldir is not None and len(keys): index = open(os.path.join(htmldir, "index.html"), "w") index.write("gcov report\n") + index.write("\n"); index.write("

gcov report

\n") - index.write("\n") + index.write("
FileCoverage
\n") for k in keys: - index.write("\n") + if k in missing: + index.write("\n" + % int(percent[k])) index.write("
FileCoverage
%s%d%%\n" % - (sgmlquote(k), sgmlquote(k), percent[k])) + index.write("
%s\n" % sgmlquote(k)) + else: + index.write("%s\n" % + (sgmlquote(k), sgmlquote(k))) + index.write("%d%%\n" % percent[k]) + index.write("
\n") index.write("

Total coverage: %d%%

\n" % (100 * (covered_lines / total_lines))) - missing_files = missing.keys() - missing_files.sort() - if len(missing_files) > 0: - index.write("

Missing files:

\n") - index.write("