Files
overleaf-cep/services/web/test/smoke/src/support/timeoutHelper.js
T
Alf Eaton 1be43911b4 Merge pull request #3942 from overleaf/prettier-trailing-comma
Set Prettier's "trailingComma" setting to "es5"

GitOrigin-RevId: 9f14150511929a855b27467ad17be6ab262fe5d5
2021-04-28 02:10:01 +00:00

19 lines
396 B
JavaScript

async function processWithTimeout({ work, timeout, message }) {
let workDeadLine
function checkInResults() {
clearTimeout(workDeadLine)
}
await Promise.race([
new Promise((resolve, reject) => {
workDeadLine = setTimeout(() => {
reject(new Error(message))
}, timeout)
}),
work.finally(checkInResults),
])
}
module.exports = {
processWithTimeout,
}