sinon.js stubs are reset, before tearDown
dwittner opened this issue · 0 comments
dwittner commented
Executing this test (stub-test.js
):
"use strict";
var buster = require("buster"),
assert = buster.assert,
refute = buster.refute;
buster.testCase("stub reset test", {
setUp: function () {
this.server = {
close: function () {
throw new Error("server is not running");
}
};
this.stub(this.server, "close");
refute.exception(this.server.close);
},
tearDown: function () {
refute.exception(this.server.close);
},
"method close should be stubbed": function () {
refute.exception(this.server.close);
}
});
leads to the following result:
Failure: stub reset test method close should be stubbed
[refute.exception] Expected not to throw but threw Error (server is not running)
AssertionError: [refute.exception] Expected not to throw but threw Error (server is not running)
at Object.referee.fail (D:\busterDev\referee\lib\referee.js:156:25)
at Object.fail (D:\busterDev\referee\lib\referee.js:43:17)
at Function.refute.exception (D:\busterDev\referee\lib\referee.js:562:18)
at Object.buster.testCase.tearDown (D:\busterDev\buster-ci\test\stub-test.js:20:16)
at asyncFunction (D:\busterDev\buster-test\lib\test-runner.js:224:19)
at callAndWait (D:\busterDev\buster-test\lib\test-runner.js:253:23)
at next (D:\busterDev\buster-test\lib\test-runner.js:273:31)
at callSerially (D:\busterDev\buster-test\lib\test-runner.js:279:9)
at Object.bane.createEventEmitter.callTearDowns (D:\busterDev\buster-test\lib\test-runner.js:589:20)
at Object.<anonymous> (D:\busterDev\buster-test\lib\test-runner.js:626:17)
1 test, 2 assertions, 1 runtime ... 1 failure
As you can see, the failure occurs in line 20 of the test, which is inside of tearDown
.
Question is, what is more useful, to reset the stubs before or after tearDown
?