1
0
Fork 0
mirror of https://github.com/openstf/stf synced 2025-10-05 19:42:01 +02:00

Keep better track of vital streams. Add monkey.

This commit is contained in:
Simo Kinnunen 2014-01-29 16:24:07 +09:00
parent 6c350d0068
commit ae4e4d3075
3 changed files with 146 additions and 4 deletions

View file

@ -40,6 +40,23 @@ devutil.ensureUnusedPort = function(adb, serial, port) {
})
}
devutil.waitForPort = function(adb, serial, port) {
function closedError(err) {
return err.message === 'closed'
}
return adb.openTcpAsync(serial, port)
.then(function(conn) {
conn.end()
return port
})
.catch(closedError, function(err) {
return Promise.delay(100)
.then(function() {
return devutil.waitForPort(adb, serial, port)
})
})
}
devutil.killProcsByComm = function(adb, serial, comm, bin) {
return adb.shellAsync(serial, ['ps', comm])
.then(function(out) {

24
lib/util/vitals.js Normal file
View file

@ -0,0 +1,24 @@
var events = require('events')
var util = require('util')
function Vitals() {
events.EventEmitter.call(this)
}
util.inherits(Vitals, events.EventEmitter)
Vitals.prototype.register = function(name, stream) {
var that = this
stream.on('end', function() {
that.emit('end', name)
})
stream.on('error', function(err) {
that.emit('error', name, err)
})
return stream
}
module.exports = Vitals