node package manager
Orgs are free. Discover, share, and reuse code in your team. Create a free org »

thunk-mocha

thunk-mocha

Enable support for generators in Mocha with backward compatibility.

NPM version Build Status Downloads

It is similar to Co Mocha, but it is a different implementation and more powerful. It is a perfect patch for mocha!

Installation

npm install thunk-mocha

Usage

Call by mocha in CLI:

mocha -r thunk-mocha

Call in js file:

// make sure that `mocha` have loaded 
require('thunk-mocha')()
// or: require('thunk-mocha')(require('mocha')) 

Example

After patched, mocha support:

it('support sync test', function () {
  // do some test 
})
 
it('support thunk style async test', function (done) {
  // do some test 
  done()
})
 
it('support promise style async test', function () {
  // do some test 
  return promiseLikeObject
})
 
it('support generator style async test', function * () {
  // do some test 
  yield promise
  // yield thunk 
  // yield generator 
  // ... 
})
 
it('support async/await style async test', async function () {
  // do some test 
  await promise
})
 
it('support Rx.Observable style async test', function () {
  // do some test 
  return Rx.Observable.bindNodeCallback(fs.stat)('package.json')
})