public int? GetCodeCoverage(IBuildDetail buildDetail, ICoverageAnalysisManager analysisManager)
        {
            IBuildCoverage[] queryBuildCoverage = analysisManager.QueryBuildCoverage(buildDetail.Uri.ToString(), CoverageQueryFlags.Modules);
            int blocksCovered = 0;
            int blocksNotCovered = 0;

            foreach (var coverage in queryBuildCoverage)
            {
                foreach (var moduleInfo in coverage.Modules)
                {
                    blocksCovered += moduleInfo.Statistics.BlocksCovered;
                    blocksNotCovered += moduleInfo.Statistics.BlocksNotCovered;
                }
            }
            if (blocksCovered + blocksNotCovered == 0)
            {
                return null;
            }
            return 100 * blocksCovered / (blocksCovered + blocksNotCovered);
        }
示例#2
0
        public int?GetCodeCoverage(Build buildDetail, ICoverageAnalysisManager analysisManager)
        {
            IBuildCoverage[] queryBuildCoverage = analysisManager.QueryBuildCoverage(buildDetail.Uri.ToString(), CoverageQueryFlags.Modules);
            int blocksCovered    = 0;
            int blocksNotCovered = 0;

            foreach (var coverage in queryBuildCoverage)
            {
                foreach (var moduleInfo in coverage.Modules)
                {
                    blocksCovered    += moduleInfo.Statistics.BlocksCovered;
                    blocksNotCovered += moduleInfo.Statistics.BlocksNotCovered;
                }
            }
            if (blocksCovered + blocksNotCovered == 0)
            {
                return(null);
            }
            return(100 * blocksCovered / (blocksCovered + blocksNotCovered));
        }