https://github.com/traviswimer/grunt-magic-mocha
Grunt task to run front-end mocha unit tests from the command line with no browser.
https://github.com/traviswimer/grunt-magic-mocha
Last synced: 4 months ago
JSON representation
Grunt task to run front-end mocha unit tests from the command line with no browser.
- Host: GitHub
- URL: https://github.com/traviswimer/grunt-magic-mocha
- Owner: traviswimer
- License: mit
- Created: 2014-04-15T15:51:41.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2017-09-10T21:40:20.000Z (almost 9 years ago)
- Last Synced: 2025-09-20T22:35:53.210Z (10 months ago)
- Language: JavaScript
- Size: 12.7 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE-MIT
Awesome Lists containing this project
README
# grunt-magic-mocha [](https://travis-ci.org/traviswimer/grunt-magic-mocha)
> Grunt task to run front-end mocha unit tests from the command line with no browser.
## Getting Started
This plugin requires [Grunt](http://gruntjs.com/) `~0.4.4` -- [Learn to use Grunt](http://gruntjs.com/getting-started)
Install the plugin with this command:
```shell
npm install grunt-magic-mocha --save-dev
```
Enable in your Gruntfile with:
```js
grunt.loadNpmTasks('grunt-magic-mocha');
```
> **NOTE:** If you get errors installing this module, it is probably caused by the `contextify` dependency of `jsDOM`. There is more information [here](https://github.com/tmpvar/jsdom#contextify).
>If you are using Linux, you may just need to update your version of `NodeJS`.
The most up-to-date version can be found [here](http://nodejs.org/). You will need to download the file, untar it and then run the following commands within the new directory:
```shell
./configure
make
sudo make install
```
## Quick setup
```js
grunt.initConfig({
magic_mocha: {
myTests: {
files: {
src: ['test/**/*_test.js']
}
}
}
});
```
## The "magic_mocha" task
### Overview
In your project's Gruntfile, add a section named `magic_mocha` to the data object passed into `grunt.initConfig()`.
```js
grunt.initConfig({
magic_mocha: {
myTestsWithOptions: {
options: {
globals: {
// Add the jQuery module to the window object
'$': 'jquery'
},
mochaOptions:{
// You should be able to include any mocha options here
reporter: "spec",
ui: "bdd"
}
},
files: {
src: ['test/**/*_test.js']
}
}
}
});
```
### Options
#### options.globals
Type: `object`
Specifies modules that should be attached to the global `window` variable.
#### options.mochaOptions
Type: `object`
Specifies any mocha options to be used. For more details, look throught the [Mocha documentation](http://mochajs.org/).
The following options are included by default:
* **reporter** - "spec"
* **ui** - "bdd"
## 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](http://gruntjs.com/).