Awesome
<h1 align="center">lcov-total</h1> <div align="center"> </div>Table of contents
<!-- toc --> <!-- tocstop -->About
This module now uses ESM modules from
v2.0.0
, if you need to use CommonJS refer tov1.x.x
This simple package aim to parse lcov.info
files and provide the total coverage Number
without fancy formatting or anything else, either in stdout or programmatically.
Here's why:
- You need to assest coverage in your CI and fail below certain threshold
- you don't want to do unredable
awk
chains - every other options outputs fancy colored output which is tediuous to parse and error prone
Installation
You can install locally
npm install lcov-total
You can install globally
npm install -g lcov-total
Or use NPX
npx lcov-total
<!-- USAGE EXAMPLES -->
Usage
You can use lcov-total
from command line providing lcov.info
file location eg:
npx lcov-total lcov.info
# 100.00
If you pass the --gte=value
flag you will get an exitCode 0 or 1 based on resulting coverage >= value
expression, eg:
npx lcov-total lcov.info --gte=90
echo $?
# 0
Or programmatically
import lcovTotal from "lcov-total";
lcovTotal("/path/to/lcov.info"); // this throws if any error
<!-- CONTRIBUTING -->
Contributing
Project is pretty simple and straight forward for what is my needs, but if you have any idea you're welcome.
This projects uses commitlint with Angular configuration so be sure to use standard commit format or PR won't be accepted.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'feat(scope): some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License
Distributed under the MIT License. See LICENSE
for more information.
Contact
Simone Corsi - @im_simonecorsi
<!-- ACKNOWLEDGEMENTS -->Acknowledgements
- lcov parsing mega switch - from davglass