|
All checks were successful
CI / Lint (pull_request) Successful in 29s
CI / Test Node (pull_request) Successful in 32s
Conventional Tools Commitlint / Commitlint (pull_request) Successful in 5s
CI / Lint (push) Successful in 27s
CI / Test Node (push) Successful in 32s
Conventional Tools Commitlint / Commitlint (push) Successful in 5s
Now you can run this inside a sapling repo. It will automatically pick what source control you are using by checking for the root repo. |
||
|---|---|---|
| .github | ||
| assets | ||
| bin | ||
| data | ||
| src | ||
| tests | ||
| .ctrc.yml | ||
| .eslintrc.js | ||
| .gitignore | ||
| .prettierrc.js | ||
| CHANGELOG.md | ||
| jest.config.ts | ||
| package.json | ||
| README.md | ||
| renovate.json | ||
| tsconfig.json | ||
| yarn.lock | ||
Installation
You can install the package with npm
npm i -g @adeattwood/diff-cov
You can run it directly with npx
npx @adeattwood/diff-cov
Setup
For diff-cov to get the diff to your default branch, you must set up your
origin/HEAD ref. To test to see if you have this set up, run.
git rev-parse --abbrev-ref origin/HEAD
This should print out the origin ref to your default branch for this repo it
will print origin/0.x. If you get an unknown ref error, then you will need to
link origin/HEAD to your default branch with the below command.
git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/0.x
Note
: Make sure you change
0.xfor your default branch name typicallymainordevelopment
Usage
Git diff
Before you run diff-cov you must run your test suite with coverage and output
a lcov coverage file. You must also have all your changes committed to ensure
it's included in the output.
Once you are ready to go, you can run diff-cov to print your diff highlighted
with coverage status. Any line not included in the coverage report will not be
highlighted and hit and missed lines will be colored green and red. You can use
the --coverageFile flag to specify the path to your coverage report if its
not in the default location of ./lcov.info
diff-cov
diff-cov --coverageFile coverage/lcov.info
A report is printed at the bottom and colored with a threshold of 90%
anything below this percentage coverage will be colored red.
LCov diff
You can also print the coverage difference between to lcov.info files. To use this run your tests with coverage for a first time. After its finished you can copy your lcov.info file somewhere for later for example:
cp ./lcov.info /tmp/lcov.info
Then you can work on your test and run the tests once more with coverage to
generate you a new lcov.info file. Then you can print the difference in
coverage between the two files with:
diff-cov --compare /tmp/lcov.info
This can come in handy when you need to find out what a test is testing. You can create your base coverage file, comment out a test, run the tests again and diff the results.
