From: Vedant Kumar Date: Tue, 6 Sep 2016 22:46:00 +0000 (+0000) Subject: [llvm-cov] Use colors consistently in the summary X-Git-Tag: llvmorg-4.0.0-rc1~10506 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5053b11edc5cc7a369147004eb5ad88d9b2f8181;p=platform%2Fupstream%2Fllvm.git [llvm-cov] Use colors consistently in the summary Use the same color for counts and percentages. There doesn't seem to be a reason for them to be different, and the summary looks more consistent this way. llvm-svn: 280765 --- diff --git a/llvm/tools/llvm-cov/CoverageReport.cpp b/llvm/tools/llvm-cov/CoverageReport.cpp index f6bcf09..4ce642c 100644 --- a/llvm/tools/llvm-cov/CoverageReport.cpp +++ b/llvm/tools/llvm-cov/CoverageReport.cpp @@ -106,8 +106,8 @@ void renderDivider(ArrayRef ColumnWidths, raw_ostream &OS) { OS << '-'; } -/// \brief Return the color which correponds to the coverage -/// percentage of a certain metric. +/// \brief Return the color which correponds to the coverage percentage of a +/// certain metric. template raw_ostream::Colors determineCoveragePercentageColor(const T &Info) { if (Info.isFullyCovered()) @@ -121,65 +121,67 @@ raw_ostream::Colors determineCoveragePercentageColor(const T &Info) { namespace llvm { void CoverageReport::render(const FileCoverageSummary &File, raw_ostream &OS) { + auto FileCoverageColor = + determineCoveragePercentageColor(File.RegionCoverage); + auto FuncCoverageColor = + determineCoveragePercentageColor(File.FunctionCoverage); + auto LineCoverageColor = determineCoveragePercentageColor(File.LineCoverage); OS << column(File.Name, FileReportColumns[0], Column::NoTrim) << format("%*u", FileReportColumns[1], (unsigned)File.RegionCoverage.NumRegions); - Options.colored_ostream(OS, File.RegionCoverage.isFullyCovered() - ? raw_ostream::GREEN - : raw_ostream::RED) - << format("%*u", FileReportColumns[2], (unsigned)File.RegionCoverage.NotCovered); - Options.colored_ostream(OS, - determineCoveragePercentageColor(File.RegionCoverage)) + Options.colored_ostream(OS, FileCoverageColor) << format( + "%*u", FileReportColumns[2], (unsigned)File.RegionCoverage.NotCovered); + Options.colored_ostream(OS, FileCoverageColor) << format("%*.2f", FileReportColumns[3] - 1, - File.RegionCoverage.getPercentCovered()) << '%'; + File.RegionCoverage.getPercentCovered()) + << '%'; OS << format("%*u", FileReportColumns[4], (unsigned)File.FunctionCoverage.NumFunctions); OS << format("%*u", FileReportColumns[5], (unsigned)(File.FunctionCoverage.NumFunctions - File.FunctionCoverage.Executed)); - Options.colored_ostream( - OS, determineCoveragePercentageColor(File.FunctionCoverage)) + Options.colored_ostream(OS, FuncCoverageColor) << format("%*.2f", FileReportColumns[6] - 1, - File.FunctionCoverage.getPercentCovered()) << '%'; + File.FunctionCoverage.getPercentCovered()) + << '%'; OS << format("%*u", FileReportColumns[7], (unsigned)File.LineCoverage.NumLines); - Options.colored_ostream(OS, File.LineCoverage.isFullyCovered() - ? raw_ostream::GREEN - : raw_ostream::RED) - << format("%*u", FileReportColumns[8], - (unsigned)File.LineCoverage.NotCovered); - Options.colored_ostream(OS, - determineCoveragePercentageColor(File.LineCoverage)) + Options.colored_ostream(OS, LineCoverageColor) << format( + "%*u", FileReportColumns[8], (unsigned)File.LineCoverage.NotCovered); + Options.colored_ostream(OS, LineCoverageColor) << format("%*.2f", FileReportColumns[9] - 1, - File.LineCoverage.getPercentCovered()) << '%'; + File.LineCoverage.getPercentCovered()) + << '%'; OS << "\n"; } void CoverageReport::render(const FunctionCoverageSummary &Function, raw_ostream &OS) { + auto FuncCoverageColor = + determineCoveragePercentageColor(Function.RegionCoverage); + auto LineCoverageColor = + determineCoveragePercentageColor(Function.LineCoverage); OS << column(Function.Name, FunctionReportColumns[0], Column::RightTrim) << format("%*u", FunctionReportColumns[1], (unsigned)Function.RegionCoverage.NumRegions); - Options.colored_ostream(OS, Function.RegionCoverage.isFullyCovered() - ? raw_ostream::GREEN - : raw_ostream::RED) + Options.colored_ostream(OS, FuncCoverageColor) << format("%*u", FunctionReportColumns[2], (unsigned)Function.RegionCoverage.NotCovered); Options.colored_ostream( OS, determineCoveragePercentageColor(Function.RegionCoverage)) << format("%*.2f", FunctionReportColumns[3] - 1, - Function.RegionCoverage.getPercentCovered()) << '%'; + Function.RegionCoverage.getPercentCovered()) + << '%'; OS << format("%*u", FunctionReportColumns[4], (unsigned)Function.LineCoverage.NumLines); - Options.colored_ostream(OS, Function.LineCoverage.isFullyCovered() - ? raw_ostream::GREEN - : raw_ostream::RED) + Options.colored_ostream(OS, LineCoverageColor) << format("%*u", FunctionReportColumns[5], (unsigned)Function.LineCoverage.NotCovered); Options.colored_ostream( OS, determineCoveragePercentageColor(Function.LineCoverage)) << format("%*.2f", FunctionReportColumns[6] - 1, - Function.LineCoverage.getPercentCovered()) << '%'; + Function.LineCoverage.getPercentCovered()) + << '%'; OS << "\n"; } @@ -226,13 +228,11 @@ void CoverageReport::renderFileReports(raw_ostream &OS) { << column("Missed Regions", FileReportColumns[2], Column::RightAlignment) << column("Cover", FileReportColumns[3], Column::RightAlignment) << column("Functions", FileReportColumns[4], Column::RightAlignment) - << column("Missed Functions", FileReportColumns[5], - Column::RightAlignment) + << column("Missed Functions", FileReportColumns[5], Column::RightAlignment) << column("Executed", FileReportColumns[6], Column::RightAlignment) << column("Lines", FileReportColumns[7], Column::RightAlignment) << column("Missed Lines", FileReportColumns[8], Column::RightAlignment) - << column("Cover", FileReportColumns[9], Column::RightAlignment) - << "\n"; + << column("Cover", FileReportColumns[9], Column::RightAlignment) << "\n"; renderDivider(FileReportColumns, OS); OS << "\n";