Sometimes, we want to change the timeout on a Jasmine Node async spec.
In this article, we’ll look at how to change the timeout on a Jasmine Node async spec.
How to change the timeout on a Jasmine Node async spec?
To change the timeout on a Jasmine Node async spec, we can set the jasmine.DEFAULT_TIMEOUT_INTERVAL
value.
For instance, we write
describe("long asynchronous specs", () => {
let originalTimeout;
beforeEach(() => {
originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
jasmine.DEFAULT_TIMEOUT_INTERVAL = 10000;
});
it("takes a long time", (done) => {
setTimeout(() => {
done();
}, 9000);
});
afterEach(() => {
jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
});
});
to set the jasmine.DEFAULT_TIMEOUT_INTERVAL
value to 10000 milliseconds in the beforeEach
callback to change the default timeout for each test.
Then we call it
with a callback to add a test that calls done
after 9000 milliseconds.
And then set jasmine.DEFAULT_TIMEOUT_INTERVAL
to originalTimeout
in the afterEach
callback to reset the timeout to originalTimeout
.
Conclusion
To change the timeout on a Jasmine Node async spec, we can set the jasmine.DEFAULT_TIMEOUT_INTERVAL
value.