mirror of
https://github.com/DeviceFarmer/stf.git
synced 2026-04-17 23:53:25 +02:00
Fix adb invocations (#202)
This commit is contained in:
@@ -9,12 +9,14 @@ var pathutil = require('../../../util/pathutil')
|
||||
var devutil = require('../../../util/devutil')
|
||||
var streamutil = require('../../../util/streamutil')
|
||||
var Resource = require('./util/resource')
|
||||
var DeviceClient = require('@devicefarmer/adbkit/dist/src/adb/DeviceClient').default
|
||||
|
||||
module.exports = syrup.serial()
|
||||
.dependency(require('../support/adb'))
|
||||
.dependency(require('../support/properties'))
|
||||
.dependency(require('../support/abi'))
|
||||
.define(function(options, adb, properties, abi) {
|
||||
var deviceClient = new DeviceClient(adb, options.serial)
|
||||
var log = logger.createLogger('device:resources:minirev')
|
||||
|
||||
var resources = {
|
||||
@@ -36,7 +38,7 @@ module.exports = syrup.serial()
|
||||
}
|
||||
|
||||
function removeResource(res) {
|
||||
return adb.shell(options.serial, ['rm', '-f', res.dest])
|
||||
return deviceClient.shell(['rm', '-f', res.dest])
|
||||
.timeout(10000)
|
||||
.then(function(out) {
|
||||
return streamutil.readAll(out)
|
||||
@@ -45,7 +47,7 @@ module.exports = syrup.serial()
|
||||
}
|
||||
|
||||
function pushResource(res) {
|
||||
return adb.push(options.serial, res.src, res.dest, res.mode)
|
||||
return deviceClient.push(res.src, res.dest, res.mode)
|
||||
.timeout(10000)
|
||||
.then(function(transfer) {
|
||||
return new Promise(function(resolve, reject) {
|
||||
@@ -60,7 +62,7 @@ module.exports = syrup.serial()
|
||||
log.info('Installing "%s" as "%s"', res.src, res.dest)
|
||||
|
||||
function checkExecutable(res) {
|
||||
return adb.stat(options.serial, res.dest)
|
||||
return deviceClient.stat(res.dest)
|
||||
.timeout(5000)
|
||||
.then(function(stats) {
|
||||
// Can't use fs.constants.S_IXUSR due to differences on Windows.
|
||||
|
||||
@@ -9,11 +9,13 @@ var pathutil = require('../../../util/pathutil')
|
||||
var devutil = require('../../../util/devutil')
|
||||
var streamutil = require('../../../util/streamutil')
|
||||
var Resource = require('./util/resource')
|
||||
var DeviceClient = require('@devicefarmer/adbkit/dist/src/adb/DeviceClient').default
|
||||
|
||||
module.exports = syrup.serial()
|
||||
.dependency(require('../support/adb'))
|
||||
.dependency(require('../support/abi'))
|
||||
.define(function(options, adb, abi) {
|
||||
var deviceClient = new DeviceClient(adb, options.serial)
|
||||
var log = logger.createLogger('device:resources:minitouch')
|
||||
|
||||
var resources = {
|
||||
@@ -35,7 +37,7 @@ module.exports = syrup.serial()
|
||||
}
|
||||
|
||||
function removeResource(res) {
|
||||
return adb.shell(options.serial, ['rm', '-f', res.dest])
|
||||
return deviceClient.shell(['rm', '-f', res.dest])
|
||||
.timeout(10000)
|
||||
.then(function(out) {
|
||||
return streamutil.readAll(out)
|
||||
@@ -44,7 +46,7 @@ module.exports = syrup.serial()
|
||||
}
|
||||
|
||||
function pushResource(res) {
|
||||
return adb.push(options.serial, res.src, res.dest, res.mode)
|
||||
return deviceClient.push(res.src, res.dest, res.mode)
|
||||
.timeout(10000)
|
||||
.then(function(transfer) {
|
||||
return new Promise(function(resolve, reject) {
|
||||
@@ -59,7 +61,7 @@ module.exports = syrup.serial()
|
||||
log.info('Installing "%s" as "%s"', res.src, res.dest)
|
||||
|
||||
function checkExecutable(res) {
|
||||
return adb.stat(options.serial, res.dest)
|
||||
return deviceClient.stat(res.dest)
|
||||
.timeout(5000)
|
||||
.then(function(stats) {
|
||||
// Can't use fs.constants.S_IXUSR due to differences on Windows.
|
||||
@@ -107,7 +109,7 @@ module.exports = syrup.serial()
|
||||
return {
|
||||
bin: resources.bin.dest
|
||||
, run: function(cmd) {
|
||||
return adb.shell(options.serial, util.format(
|
||||
return deviceClient.shell(util.format(
|
||||
'exec %s%s'
|
||||
, resources.bin.dest
|
||||
, cmd ? util.format(' %s', cmd) : ''
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
var util = require('util')
|
||||
|
||||
var DeviceClient = require('@devicefarmer/adbkit/dist/src/adb/DeviceClient').default
|
||||
var syrup = require('@devicefarmer/stf-syrup')
|
||||
var ProtoBuf = require('protobufjs')
|
||||
var semver = require('semver')
|
||||
@@ -12,6 +13,7 @@ var logger = require('../../../util/logger')
|
||||
module.exports = syrup.serial()
|
||||
.dependency(require('../support/adb'))
|
||||
.define(function(options, adb) {
|
||||
var deviceClient = new DeviceClient(adb, options.serial)
|
||||
var log = logger.createLogger('device:resources:service')
|
||||
var builder = ProtoBuf.loadProtoFile(
|
||||
pathutil.vendor('STFService/wire.proto'))
|
||||
@@ -30,7 +32,7 @@ module.exports = syrup.serial()
|
||||
}
|
||||
|
||||
function getPath() {
|
||||
return adb.shell(options.serial, ['pm', 'path', resource.pkg])
|
||||
return deviceClient.shell(['pm', 'path', resource.pkg])
|
||||
.timeout(10000)
|
||||
.then(function(out) {
|
||||
return streamutil.findLine(out, (/^package:/))
|
||||
@@ -46,7 +48,7 @@ module.exports = syrup.serial()
|
||||
return getPath()
|
||||
.then(function(installedPath) {
|
||||
log.info('Running version check')
|
||||
return adb.shell(options.serial, util.format(
|
||||
return deviceClient.shell(util.format(
|
||||
"export CLASSPATH='%s';" +
|
||||
" exec app_process /system/bin '%s' --version 2>/dev/null"
|
||||
, installedPath
|
||||
@@ -74,11 +76,11 @@ module.exports = syrup.serial()
|
||||
log.info('Installing STFService')
|
||||
// Uninstall first to make sure we don't have any certificate
|
||||
// issues.
|
||||
return adb.uninstall(options.serial, resource.pkg)
|
||||
return deviceClient.uninstall(resource.pkg)
|
||||
.timeout(15000)
|
||||
.then(function() {
|
||||
return promiseutil.periodicNotify(
|
||||
adb.install(options.serial, resource.apk)
|
||||
deviceClient.install(resource.apk)
|
||||
, 20000
|
||||
)
|
||||
.timeout(65000)
|
||||
|
||||
Reference in New Issue
Block a user