ensure v0.4.6
ensure
ensure is just a simple way to test in node.js
installation
- install npm
npm install ensure
usage
var ensure = require('ensure')
, tests = exports
;
tests.foo = function (callback) {
callback(true);
};
tests.foo_ok = function (t) {
this.t.ok(t);
};
ensure('foo', tests, module);run it:
node foo.jsan extra parameter is available to allow you to define only some tests from a specific file. you can do this by providing a comma separated list of tests you want to run, e.g. ensure('foo',tests,module,'foo,bar');. you can use this in combination with process.argv to choose what tests to run from the shell:
// assuming node foo.js foo,bar
ensure('foo',tests,module,process.argv[2]);you can also set ensure to use a different test engine. for now we have tap and vows available with tap by default. here's an example using vows
var ensure = require('ensure')
, assert = require('assert')
, tests = exports
;
tests.vows = function (cb) { cb('foo'); };
tests.vows_ok = function (value) {
assert.equal(value,'foo','foo test worked');
};
ensure(__filename,tests,module,process.argv[2]);to run test vows you can do:
node vows.js vowsvows is the test name and is optional (by default all tests run).
note: this.t should not be placed in a variable. ensure uses a very simple static analysis algorithm to determine how many assertions exist in your callback. if you think this is not satisfactory feel free to make a pull request with better static analysis code.
contribute
everyone is welcome to contribute. patches, bug-fixes, new features
- create an issue on github so the community can comment on your idea
- fork
nanoin github - create a new branch
git checkout -b my_branch - create tests for the changes you made
- make sure you pass both existing and newly inserted tests
- commit your changes
- push to your branch
git push origin my_branch - create an pull request
tests
- install the packages referred as dev dependencies in
package.json - browse to
test/and./run.
always make sure all the tests pass before sending in your pull request!
meta
- code:
git clone git://github.com/dscape/ensure.git - home: http://github.com/dscape/ensure
- bugs: http://github.com/dscape/ensure/issues
(oO)--',- in caos