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(); }
public void ApiWrapper_ReturnAllProjectWithCoverage_ExepctUnitTests() { var dataSource = new BuildDetails { information = new[] { new Information { coverageData = new Coveragedata { modules = new[] { new Module {blocksCovered = 1, blocksNotCovered = 1, name = "newBlock"}, new Module {blocksCovered = 1, blocksNotCovered = 1, name = "newBlockUnitTest"}, } } } } }; var result = ApiWrapper.ComputeCoverage(dataSource); Assert.AreEqual(1, result.Length); }