gulp-npm-test
A gulp task to run tests, defaults to npm test
,
with automatic notifications + various options / configuration possibilities...
Use
As simple as it gets:
var gulp = gulp
Configure
It takes configuration options - here is an example, loosely borrowed from
datomiki's gulpfile.js
:
var gulp = gulp taskName: 'test' // this is the default taskHelp: 'A test task.' // irrelevant if not using beverage or gulp-help withoutNpmRun: true // the default, otherwise runs `npm test` watch: 'index.js' 'test/*.spec.coffee' // create a test:watch task using gulp-watch testsRe: '\\.spec\\.coffee$' // a RegExp (String) to match test files with (for watching) templates: 'your-custom-overrides.json' // deep-merged into notifications.json templateFull: 'test' // for running all the tests templatePart: 'test-part' // partial testing (e.g. test file change event)
Watching
In the above example if testsRe
isn't set -- all tests will be run each time,
no matter which file triggers the test call. Notice the testsRe
option is expected to be a String and therefore '' has to be escaped as '\' -- e.g. /\./
is '\\.'
.
One could setup more custom watching by using gulp-cause directly or otherwise.
Further
All of the above options are optional if the defaults turn out good-enough.
The test task can take a glob / path to a specific test with a -t
or --test
,
though you probably need to set the test testCmd
option, and use a framework
that would be ok with it:
gulp test -t test/some.spec.coffee
See childish-process for templates / options / notifications.
Happy testing!
Tests
install.sh #once npm test
Though gulp-npm-test
should work on any platform, its tests probably
need a *nix to run - Linux, Mac, etc.