Skip to content

template coverage-lines-line does not work #6

Description

@mastermatt

Using template coverage-lines-line causes the following error.
All other templates are working for me.

git diff origin/master...HEAD | diff-test-coverage -c coverage/lcov.info -t lcov --log-template coverage-lines-line --
An unexpected error occurred: TypeError: Cannot read property 'toString' of undefined
    at _.find.detail (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/lib/console-reporter.js:126:73)
    at baseFindIndex (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:802:11)
    at findIndex (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:7258:14)
    at Function.find (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:5059:21)
    at isLineCovered (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/lib/console-reporter.js:126:29)
    at displayLineCoverageLine (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/lib/console-reporter.js:95:23)
    at Object.displayLineCoverageLine (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/lib/console-reporter.js:62:29)
    at _.forEach (lodash.templateSources[0]:18:10)
    at /Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:4905:15
    at baseForOwn (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:2990:24)
    at /Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:4874:18
    at Function.forEach (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:9342:14)
    at _.forEach (lodash.templateSources[0]:16:4)
    at /Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:4905:15
    at baseForOwn (/Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:2990:24)
    at /Users/home/.nvm/versions/node/v10.18.1/lib/node_modules/@connectis/diff-test-coverage/node_modules/lodash/lodash.js:4874:18

const lineCoverage = _.find(coverageDetails, detail => detail.line.toString() === lineNumber.toString());

When I log out the value of coverageDetails, I get a string from the my git diff:
import { lstatSync, readdirSync, readFileSync } from "fs";.

The issue seems to be that this line is passing a previousLineNumber arg

const message = displayLineCoverageLine(lineNumber, previousLineNumber, line, linesCoverageDetails);

However, displayLineCoverageLine is not expecting that arg.
function displayLineCoverageLine(lineNumber, line, linesCoverageDetails) {

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions