
Product
Announcing Socket Fix 2.0
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
danger-plugin-coverage
Advanced tools
A Danger plugin to report code coverage.
This plugin detects and parses coverage reports, posting the results as a Markdown table back to the pull request.
It uses the clover.xml
format, which is output by Istanbul,
a coverage reporter integrated with JavaScript testing tools such as
Jest and Karma.
This format can also be output by testing libraries for other languages, such as PHPUnit. So, while this is primarily intended as a tool to run against JavaScript packages it would technically work as a coverage reporter for other languages too.
Test coverage is looking a little low for the files created or modified in this PR, perhaps we need to improve this.
Coverage threshold for branches (80%) not met: 49.08%
Coverage threshold for functions (80%) not met: 74.46%
Impacted Files | % Stmts | % Branch | % Funcs | % Line | Uncovered Lines | |
---|---|---|---|---|---|---|
src/module-one.js | 100 | 100 | 100 | 100 | :white_check_mark: | |
src/module-two.js | 95.24 | 33.33 | 66.67 | 80 | 1, 42, 1337... | :x: |
src/module-three.js | 82.33 | 10.25 | 44.55 | 45.55 | 12, 15, 32... | :x: |
src/module-four.js | 100 | 0 | 10 | 32.5 | 54, 65, 94... | :x: |
src/module-five.js | 100 | 100 | 100 | 100 | :white_check_mark: |
Impacted Files | % Stmts | % Branch | % Funcs | % Line | Uncovered Lines | |
---|---|---|---|---|---|---|
src/module-six.js | 100 | 100 | 100 | 100 | :white_check_mark: | |
src/module-seven.js | 100 | 100 | 100 | 100 | :white_check_mark: |
Install:
yarn add danger-plugin-coverage --dev
At a glance:
// dangerfile.js
import coverage from 'danger-plugin-coverage';
schedule(coverage());
Note that the coverage report output by your test runner must exist before Danger
is run. By default we will look for the report at coverage/clover.xml
, which
is the default output location for Jest.
The function accepts a settings object with the following properties:
name | description |
---|---|
successMessage | A custom message to show when coverage is above the threshold. |
failureMessage | A custom message to show when coverage is below the threshold. |
cloverReportPath | Override automatic coverage report detection to provide the relative path to a report. |
maxRows | The number of rows to show (additional rows will be collapsed within a <details> element). |
maxChars | The maximum number of characters to allow in a file name cell. |
maxUncovered | The maximum number of uncovered lines to show. |
wrapFilenames | Wrap long file names to help the table fit in a PR comment. |
threshold | The thresholds at which to show the failure messaging. |
warnOnNoReport | Show a warning if no coverage report was detected. |
Example (defaults shown):
import coverage from 'danger-plugin-coverage';
schedule(coverage({
successMessage: ':+1: Test coverage is looking good.',
failureMessage: 'Test coverage is looking a little low for the files created '
+ 'or modified in this PR, perhaps we need to improve this.',
cloverReportPath: './coverage/clover.xml',
maxRows: 3,
maxChars: 100,
maxUncovered: 10,
wrapFilenames: true,
warnOnNoReport: true,
showAllFiles: false,
threshold: {
statements: 80,
branches: 80,
functions: 80,
lines: 80,
},
}));
FAQs
A Danger plugin to report code coverage.
We found that danger-plugin-coverage demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket Fix 2.0 brings targeted CVE remediation, smarter upgrade planning, and broader ecosystem support to help developers get to zero alerts.
Security News
Socket CEO Feross Aboukhadijeh joins Risky Business Weekly to unpack recent npm phishing attacks, their limited impact, and the risks if attackers get smarter.
Product
Socket’s new Tier 1 Reachability filters out up to 80% of irrelevant CVEs, so security teams can focus on the vulnerabilities that matter.