ryanluker / vscode-coverage-gutters

Display test coverage generated by lcov and xml - works with many languages
https://marketplace.visualstudio.com/items?itemName=ryanluker.vscode-coverage-gutters
MIT License
460 stars 88 forks source link

Error: Cannot read property 'forEach' of undefined #180

Closed neufena closed 5 years ago

neufena commented 5 years ago

I receive these errors with default settings. The PHP example works but not with my own code projects

[1540459873247][coverageservice]: Loading 1 file(s) [1540459874212][lcovparser][clover-parse]: Error: Cannot read property 'forEach' of undefined [1540459874212][lcovparser][clover-parse]: Stacktrace: TypeError: Cannot read property 'forEach' of undefined at /home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/@cvrg-report/clover-json/src/index.js:29:17 at Array.map () at unpackage (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/@cvrg-report/clover-json/src/index.js:25:25) at /home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/@cvrg-report/clover-json/src/index.js:80:26 at Parser. (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/xml2js/lib/parser.js:303:18) at emitOne (events.js:116:13) at Parser.emit (events.js:211:7) at SAXParser.onclosetag (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/xml2js/lib/parser.js:261:26) at emit (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/sax/lib/sax.js:624:35) at emitNode (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/sax/lib/sax.js:629:5) at closeTag (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/sax/lib/sax.js:889:7) at SAXParser.write (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/sax/lib/sax.js:1436:13) at Parser.exports.Parser.Parser.parseString (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/xml2js/lib/parser.js:322:31) at Parser.parseString (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/xml2js/lib/parser.js:5:59) at exports.parseString (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/xml2js/lib/parser.js:354:19) at /home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/@cvrg-report/clover-json/src/index.js:76:9 at new Promise () at Object.parse.parseContent (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/node_modules/@cvrg-report/clover-json/src/index.js:75:12) at CoverageParser. (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/files/coverageparser.js:176:50) at Generator.next () at /home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/files/coverageparser.js:7:71 at new Promise () at awaiter (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/files/coverageparser.js:3:12) at CoverageParser.xmlExtractClover (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/files/coverageparser.js:174:16) at CoverageParser. (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/files/coverageparser.js:47:47) at Generator.next () at /home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/files/coverageparser.js:7:71 at new Promise () at awaiter (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/files/coverageparser.js:3:12) at CoverageParser.filesToSections (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/files/coverageparser.js:36:16) at CoverageService. (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/coverage-system/coverageservice.js:68:64) at Generator.next () at fulfilled (/home/john.mitchell/.vscode/extensions/ryanluker.vscode-coverage-gutters-2.2.0/out/src/coverage-system/coverageservice.js:4:58) at [1540459874212][coverageservice]: Caching 0 coverage(s)

ryanluker commented 5 years ago

@neufena thanks for the issue, is what you are seeing similar to this ticket https://github.com/ryanluker/vscode-coverage-gutters/issues/172 ?

neufena commented 5 years ago

Thanks,

This seems to be the same issue, I have over 500 classes in codebase that are empty (mainly exceptions just extend the base exception). I'll monitor this for the upstream fix.

ryanluker commented 5 years ago

going to close this one as a duplicate, thanks the extra info though!