Skip to content

estilles/must-sinon

Repository files navigation

must-sinon logo

Build Status Code Climate Test Coverage

must-sinon adds SinonJS related assertion matchers to Must.js.

Requirements

The current version of must-sinon requires Must.js 0.13.0 and SinonJS 1.15.0.

must-sinon Requires
Must.js
Requires
SinonJS
1.x.x ^0.13.0 ^1.15.0

Back to Top

Installation

npm

must-sinon will be available soon on npm.

npm install --save-dev must-sinon

Back to Top

Usage

var must = require('must');
var mustSinon = require('must-sinon');
mustSinon(must);

Back to Top

Assertion Matchers

must-sinon adds the following assertion matchers to Must.js.

Matcher Usage
spy spy.must.be.a.spy()
stub stub.must.be.a.stub()
called spy.must.have.been.called()
calledOnce spy.must.have.been.calledOnce()
calledTwice spy.must.have.been.calledTwice()
calledThrice spy.must.have.been.calledThrice()
calledCount spy.must.have.calledCount(3)
calledBefore spy1.must.have.been.calledBefore(spy2)
calledAfter spy2.must.have.been.calledBefore(spy1)
calledOn instance.spy.must.have.been.calledOn(instance)
calledWith spy.must.have.been.calledWith(1, 2)
calledWithExactly spy.must.have.been.calledWithExactly(1, 2, 3)
calledWithNew Constructor.must.have.been.calledWithNew()
returned stub.must.have.returned('OK')

Back to Top

Chainable Properties

must-sinon adds the following chainable properties to Must.js.

Helper Type Usage
been Passthrough spy.must.have.been.called()
never Passthrough Negator spy.must.have.never.been.called()
always Passthrough Modifier spy.must.have.always.been.calledWith(1, 2)
spy.must.have.always.been.calledWithExactly(1, 2)
spy.must.have.always.been.calledOn(1, 2)
spy.must.have.always.been.calledWithNew(1, 2)
spy.must.have.always.returned(1)

Back to Top

Unit Testing

To run unit tests simply:

git clone https://github.com/JohnnyEstilles/must-sinon.git
cd must-sinon
npm install
npm test

Back to Top

License

must-sinon is free and open source under the AGPL-3.0 License.

Copyright (c) 2015 Johnny Estilles, http://www.agentia.asia

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Back to Top

About

Adds SinonJS related matchers to Must.js

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published