UNPKG

parse-lcov

Version:
79 lines (77 loc) 1.89 kB
"use strict"; exports.__esModule = true; exports.transform = transform; var transformers = { TN: function TN(record, data) { record.title = data[0]; }, SF: function SF(record, data) { record.file = data[0]; }, // Functions FNF: function FNF(record, data) { record.functions.found = parseInt(data[0]); }, FNH: function FNH(record, data) { record.functions.hit = parseInt(data[0]); }, FN: function FN(record, data) { var line = data[0], name = data[1]; record.functions.details.push({ name: name, line: parseInt(line) }); }, FNDA: function FNDA(record, data) { var hit = data[0], name = data[1]; record.functions.details.some(function (item) { if (item.name === name && item.hit === undefined) { item.hit = parseInt(hit); return true; } else { return undefined; } }); }, // Branches BRF: function BRF(record, data) { record.branches.found = parseInt(data[0]); }, BRH: function BRH(record, data) { record.branches.hit = parseInt(data[0]); }, BRDA: function BRDA(record, data) { var line = data[0], block = data[1], branch = data[2], taken = data[3]; record.branches.details.push({ line: parseInt(line), block: parseInt(block), branch: parseInt(branch), taken: taken === "-" ? 0 : parseInt(taken) }); }, // Lines LF: function LF(record, data) { record.lines.found = parseInt(data[0]); }, LH: function LH(record, data) { record.lines.hit = parseInt(data[0]); }, DA: function DA(record, data) { var line = data[0], hit = data[1]; record.lines.details.push({ line: parseInt(line), hit: parseInt(hit) }); } }; function transform(record, lineType, data) { if (lineType) { transformers[lineType](record, data); } }