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());
        }
Exemple #2
0
        //---------------------------------------------------------------------
        static ModuleCoverage CreateModule(
            string filename,
            params LineCoverage[] lineCoverages)
        {
            var module = new ModuleCoverage(string.Empty);

            module.AddChild(new FileCoverage(filename, lineCoverages.ToList()));

            return(module);
        }
Exemple #3
0
        //---------------------------------------------------------------------
        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);
        }
Exemple #4
0
        //---------------------------------------------------------------------
        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));
        }
Exemple #5
0
        //---------------------------------------------------------------------
        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());
        }
Exemple #6
0
        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);
        }
Exemple #7
0
 //-----------------------------------------------------------------------
 public ModuleTreeNode(ModuleCoverage coverage)
     : base(coverage.Name, coverage, "48px-Gnome-application-x-executable.svg.png", false)
 {
     this.coverage = coverage;
 }