Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yaymukund/grunt-simple-mocha
A simple wrapper for running mocha tests.
https://github.com/yaymukund/grunt-simple-mocha
Last synced: about 2 months ago
JSON representation
A simple wrapper for running mocha tests.
- Host: GitHub
- URL: https://github.com/yaymukund/grunt-simple-mocha
- Owner: yaymukund
- License: mit
- Archived: true
- Created: 2012-09-02T22:08:11.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2016-10-13T22:05:03.000Z (almost 8 years ago)
- Last Synced: 2024-07-26T21:56:54.629Z (about 2 months ago)
- Language: JavaScript
- Size: 40 KB
- Stars: 108
- Watchers: 5
- Forks: 32
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE-MIT
Awesome Lists containing this project
README
# grunt-simple-mocha
A simple wrapper for running tests with Mocha. It's pretty much a cleaned up
and plugin-ized version of [this helpful Gist by johnkpaul][johnkpaul_gist].If you're looking to run client-side specs with PhantomJS, you might be
interested in [grunt-mocha][othermocha].## Installation
1. Install this grunt plugin next to your project's
[Gruntfile.js][getting_started] with:
```javascript
npm install grunt-simple-mocha --save-dev
```2. Then add this line to your project's `grunt.js` gruntfile:
```javascript
grunt.loadNpmTasks('grunt-simple-mocha');
```## Usage
In your Gruntfile.js:
```javascript
grunt.initConfig({
simplemocha: {
all: {
src: ['test/**/*.js', '**/*.spec.js']
}
}
});// For this to work, you need to have run `npm install grunt-simple-mocha`
grunt.loadNpmTasks('grunt-simple-mocha');// Add a default task. This is optional, of course :)
grunt.registerTask('default', 'simplemocha');
```Now, you can just run `grunt simplemocha` in your shell to run the tests. That's it!
## Advanced Mocha Options
All `options` parameters are passed directly to Mocha. Therefore, you can use these options to configure how Mocha runs.
- `ui` name "bdd", "tdd", "exports" etc
- `reporter` reporter instance, defaults to `mocha.reporters.spec`
- `globals` array of accepted globals
- `timeout` timeout in milliseconds
- `retries` number of times to retry failed tests
- `bail` bail on the first test failure
- `slow` milliseconds to wait before considering a test slow
- `ignoreLeaks` ignore global leaks
- `fullTrace` display the full stack-trace on failing
- `grep` string or regexp to filter tests withThe Gruntfile configuration would look like this:
```javascript
grunt.initConfig({
simplemocha: {
//
// These are passed directly to the mocha constructor. See:
// https://github.com/mochajs/mocha/blob/master/lib/mocha.js#L56-L74
//
options: {
ui: 'bdd',
reporter: 'tap',
globals: ['window','document','$','should'],
timeout: 3000,
retries: 2,
bail: false,
slow: 2000,
ignoreLeaks: false,
fullTrace: true
grep: 'users',
},all: { src: ['test/**/*.js'] }
}
});
```## Running tests
Run `npm install && npm test`
## Contributing
In lieu of a formal styleguide, take care to maintain the existing coding
style. Add unit tests for any new or changed functionality. Lint and test your
code using [grunt][grunt_github].## Migration Guides
### Updating from 0.2.x to 0.3.x
This task now depends on grunt 0.4.x. Please see the
[grunt 0.3 to 0.4 migration guide][migration_guide] for more details.### Updating from 0.1.x to 0.2.x
If you were using 0.1.x, the task name has changed from `mocha` to
`simplemocha` to avoid confusion with [grunt-mocha][othermocha]. Please make
sure your grunt.js file is updated. See [#3][issue3].## Release History
* v0.1 - Woo!
* v0.2 - Changed the task name from `mocha` to `simplemocha`. See [#3][issue3].
* v0.3 - Updated to support grunt 0.4.x.
* v0.4 - Updated to support node 0.10.x.
* v0.4.1 - Updated readme and added tests.## License
Copyright (c) 2012 Mukund LakshmanLicensed under the MIT license.
[getting_started]: https://github.com/cowboy/grunt/blob/master/docs/getting_started.md
[johnkpaul_gist]: https://gist.github.com/2361303
[grunt_github]: http://github.com/cowboy/grunt
[issue3]: https://github.com/yaymukund/grunt-simple-mocha/issues/3
[othermocha]: https://github.com/kmiyashiro/grunt-mocha
[migration_guide]: https://github.com/gruntjs/grunt/wiki/Upgrading-from-0.3-to-0.4