Karma + Mocha + Sinon + Chai = ❤
Clone or download
Pull request Compare This branch is 91 commits ahead, 14 commits behind xdissent:master.

README.md

NPM version Dependency status devDependency Status

karma-sinon-chai

for Karma

Requirements

This Karma plugin requires Karma >=0.10

Installation

Install the module via npm

$ npm install --save-dev karma-sinon-chai

Add sinon-chai to the frameworks key in your Karma configuration:

module.exports = function(config) {
  'use strict';
  config.set({
    frameworks: ['mocha', 'sinon-chai'],

    # chai config
    client: {
      chai: {
        includeStack: true
      }
    }

    #...
  });
}

Usage

Each of the different Chai assertion suites is available in the tests:

describe 'karma tests with chai', ->

  it 'should expose the Chai assert method', ->
    assert.ok('everything', 'everything is ok');

  it 'should expose the Chai expect method', ->
    expect('foo').to.not.equal 'bar'

  it 'should expose the Chai should property', ->
    1.should.not.equal 2
    should.exist 123

Sinon and Chai matchers for Sinon are also available:

describe 'karma tests with sinon', ->

  it 'can spy on objects', ->
    foo = bar: ->
    sinon.spy foo, 'bar'

    foo.bar 'baz'

    foo.bar.should.have.been.calledWith 'baz'

Changelog

v2.0.0

  • Removed lolex dependency. Please use Sinon's fake timers instead, which use lolex under the hood.

v1.1.0

  • Fixed broken Sinon dependency
  • Updated depenencies
    • Chai: ~3.0 => ~3.2.0
    • Sinon: ~1.15.0 => ~1.16.0
  • Removed lodash dependency

v1.0.0

  • Updated to broken sinon version. Probably doesnt work 💣.