smokestack-watch

Re-run tests on file change with watchify and smokestack

Usage no npm install needed!

<script type="module">
  import smokestackWatch from 'https://cdn.skypack.dev/smokestack-watch';
</script>

README

smokestack-watch NPM version Build Status Dependency Status

Use watchify to run tape tests with smokestack

Table of Contents generated with DocToc

Install

npm i -g smokestack-watch

Usage

smokestack-watch test/suite1/*.js test/suite2/*.js
var smokestackWatch = require('smokestack-watch')

smokestackWatch({
  // the defaults
  debug: true
  , delay: 0
  , ignoreWatch: true
  , browser: 'chrome'
  , transforms: []
  , plugins: []
  , patterns: []
  , timeout: 300000 // 5 minutes
})

CLI flags

d or debug

Enable sourcemaps. Defaults to true.

delay=0

How long should watchify wait before compiling? Defaults to 0

ignore-watch=true

Sets the ignoreWatch watchify option. Defaults to true which disables watching node_modules.

browser="chrome"

Which browser should smokestack launch? Defaults to chrome.

t or transform

Pass transform options to browserify.

p or plugin

Pass plugin options to browserify.

timeout

Timeout time for smokestack. Defaults to 5 minutes.

r <reporter module> or reporter=<reporter module>

Pass your tests through a reporter. e.g. -r tap-spec. This reporter must be installed in the working directory.

Tests

Tests are in tape and code coverage is run though covert. But are not at all complete.

  • npm test will run both server and browser tests
  • npm run tdd will run the server tests on every file change.

Developing

To publish, run npm run release -- [{patch,minor,major}]

NOTE: you might need to sudo ln -s /usr/local/bin/node /usr/bin/node to ensure node is in your path for the git hooks to work

Requirements

  • npm > 2.0.0 So that passing args to a npm script will work. npm i -g npm
  • git > 1.8.3 So that git push --follow-tags will work. brew install git

License

Artistic 2.0 © Joey Baker