sinon-chai extiende Chai con aserciones personalizadas y expresivas para spies, stubs y mocks de Sinon.js.
Configuración e inicialización
var sinon = require('sinon')
require('chai').use(require('sinon-chai'))
Aserciones con estilo Expect
expect(spy).called
expect(spy).calledOnce
expect(spy).calledTwice
expect(spy).calledThrice
expect(spy).calledBefore(otherSpy)
expect(spy).calledAfter(otherSpy)
expect(spy).calledWithNew
expect(spy).alwaysCalledWithNew
expect(spy).calledOn(context)
expect(spy).alwaysCalledOn(context)
expect(spy).calledWith(...args)
expect(spy).alwaysCalledWith(...args)
expect(spy).calledWithExactly(...args)
expect(spy).alwaysCalledWithExactly(...args)
expect(spy).calledWithMatch(matcher)
expect(spy).alwaysCalledWithMatch(matcher)
expect(spy).returned(returnValue)
expect(spy).alwaysReturned(returnValue)
expect(spy).threw(errorOrType)
expect(spy).alwaysThrew(errorOrType)
Aserciones con estilo Should
spy.should.have.been.called
spy.should.have.been.calledOnce
spy.should.have.been.calledTwice
spy.should.have.been.calledThrice
spy1.should.have.been.calledBefore(spy2)
spy1.should.have.been.calledAfter(spy2)
spy.should.have.been.calledWithNew
spy.should.always.have.been.calledWithNew
spy.should.have.been.calledOn(context)
spy.should.always.have.been.calledOn(context)
spy.should.have.been.calledWith(...args)
spy.should.always.have.been.calledWith(...args)
spy.should.have.been.calledWithExactly(...args)
spy.should.always.have.been.calledWithExactly(...args)
spy.should.have.been.calledWithMatch(matcher)
spy.should.always.have.been.calledWithMatch(matcher)
spy.should.have.returned(returnVal)
spy.should.have.always.returned(returnVal)
spy.should.have.thrown(errorObjOrString)
spy.should.have.always.thrown(errorObjOrString)