Migrating to v5.0 - Sinon.JS
As with all MAJOR
releases in semver
, there are breaking changes in sinon@5
.
This guide will walk you through those changes.
spy.reset()
is removed, use spy.resetHistory()
In a previous version we deprecated and aliased spy.reset
in favour of using spy.resetHistory
. spy.reset
has now been removed, you should use spy.resetHistory
.
sinon
is now a (default) sandbox
Since sinon@5.0.0
, the sinon
object is a default sandbox. Unless you have a very advanced setup or need a special configuration, you probably want to only use that one.
The old sandbox API is still available, so you don’t have to do anything.
However, switching to using the default sandbox can help make your code more concise. Now would be a good opportunity to tidy up your tests.
Before sinon@5.0.0
In earlier versions, you would manually have to create sandboxes and keep references to them in order to restore them.
const sandbox = sinon.createSandbox();
describe("myFunction", function () {
afterEach(function () {
sandbox.restore();
});
it("should make pie");
});
From sinon@5.0.0
describe("myFunction", function () {
afterEach(function () {
sinon.restore();
});
it("should make pie");
});