minijasminenode2
Based on Jasmine-Node, but minus the fancy stuff.
This node.js module makes Pivotal Lab's Jasmine
(http://github.com/pivotal/jasmine) spec framework available in
node.js or via the command line.
version notice
minijasminenode comes in two flavors.
This is the branch for minijasminenode2. Switch to minijasminenode.
Note that there have been breaking changes between Jasmine 1.3.1 and Jasmine 2.0.
Notably, a different interface for reporters and custom matchers. Also, note that
per-spec timeouts (e.g. it('does foo', fn, 1000))
no longer work in Jasmine 2.0.
features
MiniJasmineNode exports a library which
- places Jasmine in Node's global namespace, similar to how it's run in a browser.
- adds result reporters for the terminal.
- adds the ability to load tests from file.
- adds focused specs with
iit
and ddescribe
.
The module also contains a command line wrapper.
installation
Get the library with
npm install minijasminenode2
Or, install globally
npm install -g minijasminenode2
If you install globally, you can use minijasminenode directly from the command line
minijasminenode2 mySpecFolder/mySpec.js
See more options
minijasminenode2 --help
usage
describe('foo', function() {
it('should pass', function() {
expect(2 + 2).toEqual(4);
});
});
var miniJasmineLib = require('minijasminenode2');
miniJasmineLib.addSpecs('myTestFolder/mySpec.js');
miniJasmineLib.addReporter(myCustomReporter);
miniJasmineLib.executeSpecs(options);
You can also pass an options object into executeSpecs
var miniJasmineLib = require('minijasminenode2');
var options = {
specs: ['specDir/mySpec1.js', 'specDir/mySpec2.js'],
onComplete: function(passed) { console.log('done!'); },
isVerbose: false,
showColors: true,
includeStackTrace: true,
defaultTimeoutInterval: 5000
};
miniJasmineLib.executeSpecs(options);
to run the tests
./specs.sh
This will run passing tests as well as show examples of how failures look. To run only passing tests, use npm test
or ./bin/minijn spec/*_spec.js
1.0.0-beta.1
This change migrates to using Jasmine 2.0, and thus contains any breaking changes from
Jasmine 1.3.1 to Jasmine 2.0.
Notably
- The interface for reporters has completely changed
- The interface for custom matchers has changed
- per-spec timeouts (e.g.
it('does foo', fn, 1000))
no longer work
If you would like to continue using MiniJasmineNode against Jamsmine 1.3.1, please use version 0.4.0. This can be downloaded with npm install minijasminenode@jasmine1
.