Cancel and skip awaits when dealing with promises. Published as an NPM package: cancel-promise.
Install as an NPM package
npm i cancel-promise --save
const SkipablePromise = require("cancel-promise");
const longRunPromise = new Promise((resolve, reject) => {
setTimeout(() => {
resolve();
expect(true).to.equal(false);
}, 1500);
});
// create a skipable object
const skipable = SkipablePromise.create(longRunPromise);
setTimeout(() => {
skipable.skip();
// you can also pass a resolve value
// skipable.skip('Hello world!');
// if you want to early reject the promise
// skipable.skipReject();
}, 500);
await skipable.promise;
// resolved at 500ms
Run npm test