我正在使用sinon mock如下
var sandbox = sinon.sandbox.create();
var mockPictureUrl = "http://test.com/test.gif";
var opts = { getUserPictureURL: function () {} };
var mock = sandbox.mock(opts);
mock.expects("getUserPictureURL").once().returns(mockPictureUrl); expect(AuthController.getUserProfilePictureUrl()).to.equal(mockPictureUrl);
mock.verify();
mock.restore();
如果我们调用sandbox.restore(),我们必须调用mock.restore()吗?
这是使用sinon嘲讽的正确方法吗?
答案 0 :(得分:2)
你是对的,sandbox.restore()
你可以恢复沙盒中的所有间谍,模拟和存根对象,如果测试中有很多对象,那么非常方便,因为不需要单独恢复伪造的对象。
您可以在Sinon.JS webpage中了解有关沙箱实用程序的更多信息。
如果您只模拟一个对象,则可以决定不创建沙箱,而是直接模拟和恢复该对象。