twilio/twilio-node — pull request #60 by Mickael-van-der-Beek (2014-10-28 21:48:32+00:00)
Title: Added test coverage support using instanbul.js

This pull request adds test coverage support with `istanbul` and `Grunt.js`. Imported modules are:

- `istanbul`, for `LCOV` format report generation
- `grunt`, task runner
- `grunt-cli`, run locally installed `Grunt.js` version
- `load-grunt-tasks`, practical util that imports task providers from NPM modules
- `grunt-istanbul`, task that runs the `istanbul` NPM module on the spec,
- `grunt-jasmine-node`, task that runs the `jasmine-node` NPM module to launch the tests
- `grunt-contrib-copy`, task that copies the `package.json` file needed by the `RestClient.js` file into the `coverage` directory so as not to break the relative `require()` path
- `grunt-contrib-clean`, task that deletes the previous test coverage `reports` and `instruments`

Even though the Twilio team itself doesn't use test coverage, I thought that it could be a cool addition.
In my opinion, test coverages make it easier for new-comers to contribute to the project.

If you guys like the idea, I can also create a second pull-request that would add support for a badge (in the `README.md` file) and test coverage visualisation using [Coveralls](https://coveralls.io/). Coveralls is free because the project is open-source. You only need to GitHub-connect to the site.