1
0
Fork 0
mirror of https://github.com/openstf/stf synced 2025-10-03 17:59:28 +02:00
OpenSTF/lib/util/promiseutil.js
2016-01-19 20:52:38 +09:00

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)
})
}