internal static ModuleCoverage[] ComputeCoverage(BuildDetails buildDetail) { if (buildDetail == null) { return(null); } var coverageData = buildDetail.information.Select(i => i.coverageData); var modulCoverage = new List <ModuleCoverage>(); foreach (var coverage in coverageData) { if (coverage == null) { continue; } foreach (var module in coverage.modules) { if (module.name.ToLower().Contains("unittest")) { continue; } var moduleDetail = new ModuleCoverage { Name = module.name, BlocksCovered = module.blocksCovered, BlocksNotCovered = module.blocksNotCovered }; modulCoverage.Add(moduleDetail); } } return(modulCoverage.ToArray()); }
//--------------------------------------------------------------------- static ModuleCoverage CreateModule( string filename, params LineCoverage[] lineCoverages) { var module = new ModuleCoverage(string.Empty); module.AddChild(new FileCoverage(filename, lineCoverages.ToList())); return(module); }
//--------------------------------------------------------------------- static ModuleCoverage CreateModule( params string[] filenames) { var module = new ModuleCoverage(string.Empty); foreach (var filename in filenames) { module.AddChild(new FileCoverage(filename, new List <LineCoverage>())); } return(module); }
//--------------------------------------------------------------------- RootCoverageTreeNode CreateRoot( string moduleName, string file1, string file2) { var module = new ModuleCoverage(moduleName); module.AddChild(new FileCoverage(file1, new List <LineCoverage>())); module.AddChild(new FileCoverage(file2, new List <LineCoverage>())); var coverage = new CoverageRate("root", 0); coverage.AddChild(module); return(new RootCoverageTreeNode(coverage)); }
//--------------------------------------------------------------------- static void WriteModule(CodedOutputStream outputStream) { var line = LineCoverage.CreateBuilder(); line.SetHasBeenExecuted(hasBeenExecuted); line.SetLineNumber(lineNumber); var file = FileCoverage.CreateBuilder(); file.SetPath(filePath); file.AddLines(line); var module = ModuleCoverage.CreateBuilder(); module.SetPath(modulePath); module.AddFiles(file); WriteMessage(outputStream, module.Build()); }
public void RootCoverageTreeNode() { var file = new FileCoverage("file", new List <LineCoverage>()); var module = new ModuleCoverage("module"); module.AddChild(file); const int exitCode = 42; var coverage = new CoverageRate("root", exitCode); coverage.AddChild(module); var root = new RootCoverageTreeNode(coverage); root.EnsureLazyChildren(); var moduleNode = root.Modules.First(); moduleNode.EnsureLazyChildren(); var fileNode = moduleNode.Files.First(); Assert.AreEqual(coverage.Name, root.Text); Assert.AreEqual(module.Name, moduleNode.Text); Assert.AreEqual(file.Path, fileNode.Text); }
//----------------------------------------------------------------------- public ModuleTreeNode(ModuleCoverage coverage) : base(coverage.Name, coverage, "48px-Gnome-application-x-executable.svg.png", false) { this.coverage = coverage; }