[PATCH] D18420: [sancov] adding leading zeros to coverage pct.

Mike Aizatsky via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 24 13:21:02 PDT 2016


aizatsky updated this revision to Diff 51590.
aizatsky marked an inline comment as done.
aizatsky added a comment.

review


http://reviews.llvm.org/D18420

Files:
  tools/sancov/sancov.cc

Index: tools/sancov/sancov.cc
===================================================================
--- tools/sancov/sancov.cc
+++ tools/sancov/sancov.cc
@@ -46,6 +46,7 @@
 #include "llvm/Support/ToolOutputFile.h"
 #include "llvm/Support/raw_ostream.h"
 
+#include <algorithm>
 #include <set>
 #include <stdio.h>
 #include <string>
@@ -490,6 +491,19 @@
   return Result;
 }
 
+// Adds leading zeroes wrapped in 'lz' style.
+// Leading zeroes help locate 000% coverage.
+static std::string formatHtmlPct(size_t Pct) {
+  Pct = std::max(std::size_t{0}, std::min(std::size_t{100}, Pct));
+
+  std::string Num = std::to_string(Pct);
+  std::string Zeroes(3 - Num.size(), '0');
+  if (!Zeroes.empty())
+    Zeroes = "<span class='lz'>" + Zeroes + "</span>";
+
+  return Zeroes + std::to_string(Pct);
+}
+
 static std::string anchorName(std::string Anchor) {
   llvm::MD5 Hasher;
   llvm::MD5::MD5Result Hash;
@@ -885,7 +899,7 @@
 
       OS << "<tr><td><a href=\"#" << anchorName(FileName) << "\">"
          << stripPathPrefix(FileName) << "</a></td>"
-         << "<td>" << CovPct << "%</td>"
+         << "<td>" << formatHtmlPct(CovPct) << "%</td>"
          << "<td>" << FC.first << " (" << FC.second << ")"
          << "</tr>\n";
     }
@@ -923,7 +937,8 @@
         std::string FunctionName = P.first.FunctionName;
 
         OS << "<div class='fn' style='order: " << P.second << "'>";
-        OS << "<span class='pct'>" << P.second << "%</span> ";
+        OS << "<span class='pct'>" << formatHtmlPct(P.second)
+           << "%</span> ";
         OS << "<span class='name'><a href=\"#"
            << anchorName(FileName + "::" + FunctionName) << "\">";
         OS << escapeHtml(FunctionName) << "</a></span>";
@@ -1108,6 +1123,7 @@
     OS << ".fn { display: flex; flex-flow: row nowrap; }\n";
     OS << ".pct { width: 3em; text-align: right; margin-right: 1em; }\n";
     OS << ".name { flex: 2; }\n";
+    OS << ".lz { color: lightgray; }\n";
     OS << "</style>\n";
     OS << "<title>" << Title << "</title>\n";
     OS << "</head>\n";


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D18420.51590.patch
Type: text/x-patch
Size: 2056 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160324/f713e846/attachment.bin>


More information about the llvm-commits mailing list