mirror of
https://github.com/openstf/stf
synced 2025-10-03 17:59:28 +02:00
25 lines
455 B
JavaScript
25 lines
455 B
JavaScript
var Promise = require('bluebird')
|
|
|
|
module.exports.periodicNotify = function(promise, interval) {
|
|
var resolver = Promise.defer()
|
|
|
|
function notify() {
|
|
resolver.progress()
|
|
}
|
|
|
|
var timer = setInterval(notify, interval)
|
|
|
|
function resolve(value) {
|
|
resolver.resolve(value)
|
|
}
|
|
|
|
function reject(err) {
|
|
resolver.reject(err)
|
|
}
|
|
|
|
promise.then(resolve, reject)
|
|
|
|
return resolver.promise.finally(function() {
|
|
clearInterval(timer)
|
|
})
|
|
}
|