Enable support for generators in Mocha tests(evacuated from NSA/Microsoft Github)

anonymous f14879c604 WIP 6 年之前
debian f14879c604 WIP 6 年之前
lib affd30e105 Remove `path` usage (#37) 7 年之前
old f14879c604 WIP 6 年之前
.gitignore 834a70bde2 update dependencies to latest 10 年之前
.travis.yml f7041feaab Add support for mocha v5 (#48) 6 年之前
LICENSE dc79415cc9 Initial commit. 10 年之前
README.md b1dc16b445 Add Greenkeeper badge 🌴 (#35) 7 年之前
bower.json f14879c604 WIP 6 年之前
co-mocha.js 447719ea99 Generated built file 6 年之前
is-generator.js f14879c604 WIP 6 年之前
package.json f14879c604 WIP 6 年之前
test.js 67737f3211 chore(package): update standard to version 9.0.0 (#32) 7 年之前
testem.json 73e4ce11ab Restrict Testem launchers in CI 9 年之前

README.md

Co Mocha

NPM version NPM downloads Build status Test coverage Greenkeeper badge

Enable support for generators in Mocha tests using co.

Use the --harmony-generators flag when running node 0.11.x to access generator functions, or transpile your tests using traceur or regenerator.

Installation

npm install co-mocha --save-dev

Usage

Just require the module in your tests and start writing generators in your tests.

it('should do something', function * () {
  yield users.load(123)
})

Node

Install the module using npm install co-mocha --save-dev. Now just require the module to automatically monkey patch any available mocha instances. With mocha, you have multiple ways of requiring the module - add --require co-mocha to your mocha.opts or add require('co-mocha') inside your main test file.

If you need to monkey patch a different mocha instance you can use the library directly:

var mocha = require('mocha')
var coMocha = require('co-mocha')

coMocha(mocha)

<script> Tag

<script src="co-mocha.js"></script>

Including the browserified script will automatically patch window.Mocha. Just make sure you include it after mocha.js. If that is not possible the library exposes window.coMocha, which can be used (window.coMocha(window.Mocha)).

AMD

Same details as the script, but using AMD requires instead.

How It Works

The module monkey patches the Runnable.prototype.run method of mocha to enable generators. In contrast to other npm packages, co-mocha extends mocha at runtime - allowing you to use any compatible mocha version.

License

MIT