diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/convertLcovToCoveralls.js | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/convertLcovToCoveralls.js b/lib/convertLcovToCoveralls.js index 68687bd..521e749 100644 --- a/lib/convertLcovToCoveralls.js +++ b/lib/convertLcovToCoveralls.js @@ -12,22 +12,34 @@ var detailsToCoverage = function(length, details){ return coverage; }; +var detailsToBranches = function(details){ + var branches = []; + details.forEach(function(obj){ + ['line','block','branch','taken'].forEach(function(key){ + branches.push(obj[key] || 0); + }); + }); + return branches; +}; + var convertLcovFileObject = function(file, filepath){ var rootpath = filepath; filepath = path.resolve(rootpath, file.file); var source = fs.readFileSync(filepath, 'utf8'); var lines = source.split("\n"); var coverage = detailsToCoverage(lines.length, file.lines.details); + var branches = detailsToBranches(file.branches.details); return { name : path.relative(rootpath, path.resolve(rootpath, file.file)).split( path.sep ).join( "/" ), source : source, - coverage : coverage }; + coverage : coverage, + branches : branches }; }; var cleanFilePath = function(file) { if (file.indexOf('!') > -1) { var regex = /^(.*!)(.*)$/g; var matches = regex.exec(file); - return matches[matches.length-1]; + return matches[matches.length-1]; } return file; |
