Package detail

tape-watch

rstacruz8.2kMIT2.3.0

Reruns tape tests when files change

tape, test, watch

readme

tape-watch

Rerun tape tests when files change

tape-watch is an auto-test runner for tape. It will re-run your tests when any of the files in your project changes. This is better than using watch or nodemon: it will reload your tests in the same Node.js process, saving you precious startup time.

Status

Usage

Can happily live in your project (--save-dev) or globally (-g). I prefer global, since it's compatible with every project with tape in it.

npm install -g tape-watch

Reference

Usage:
  $ tape-watch <files> [options] -- [options for the test]

Options:
  -p, --pipe PACKAGE        pipe to this package
  -o, --out CMD             output to this file/cmd
  -R, --refresh PACKAGE     ensure this PACKAGE gets refreshed
  -r, --require PACKAGE     require a PACKAGE before startup
  -1, --once                only run once
  -w, --watch               cancel out --once
  -c, --clear               clear console between test runs

Other options:
  -h, --help                show usage information
  -v, --version             print version info and exit

Examples:

tape-watch test/index.js
tape-watch test/index.js -p tap-spec
tape-watch test/index.js -o '| tap-spec --color'

# ensure require('jquery') and require('react') always gets reevaluated
tape-watch test/index.js -r jquery -r react

# run all test files in test/
tape-watch 'test/**/*.js'

Using with Babel

Use the -r (--require) flag with babel-register.

tape-watch -r babel-register

Before you do this, of course, you'll need to install the requisite modules first.

npm install --save-dev babel-register babel-preset-es2015
/* package.json */
  "babel": {
    "presets": ["es2015"]
  }

Adding npm test

Add this to your package.json:

  "scripts": {
    "test": "tape-watch -1 test/*"
  }

You can now run tests with npm test, or make it auto-run with npm test -- --watch.

Also see

Thanks

tape-watch © 2016+, Rico Sta. Cruz. Released under the MIT License.
Authored and maintained by Rico Sta. Cruz with help from contributors (list).

ricostacruz.com  ·  GitHub @rstacruz  ·  Twitter @rstacruz

changelog

v2.3.0

Mar 15, 2017

v2.2.4

Nov 15, 2016

v2.2.3

Aug 20, 2016

  • Remove stray debugging text.

v2.2.2

Aug 18, 2016

v2.2.1

Aug 18, 2016

  • #19 - Fix bug where running stops when there's an unhandled exception.

v2.2.0

Aug 18, 2016

  • #53 - Add support for -1 / --once to only run tests once.
  • #53 - Add support for -w / --watch to cancel out --once; useful for using tape-watch as the npm test script.

v2.1.0

May 28, 2016

  • Add glob support (tape-watch 'test/**/*.js).

v2.0.2

May 28, 2016

  • Fix bug when tape-watch is invoked with multiple filenames.

v2.0.0

May 27, 2016

  • #15 - Implement -r / --require to support preprocessors like Babel. (#26)
  • Breaking: --refresh is now -R, from what used to be -r.

v1.3.0

Jan 15, 2016

  • Catch uncaught exceptions.

v1.2.0

Jan 11, 2016

  • Add --refresh support.

v1.1.0

Jan 11, 2016

  • Fix 'no tests' problem.

v1.0.0

Jan 11, 2016

  • Initial release.