![must-sinon logo](https://github.com/JohnnyEstilles/must-sinon/raw/HEAD/media/logo-must-sinon.jpg)
![Test Coverage](https://codeclimate.com/github/JohnnyEstilles/must-sinon/badges/coverage.svg)
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](https://badge.fury.io/js/must-sinon.svg)
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