Fix adb invocations (#202)

This commit is contained in:
Karol Wrótniak
2021-03-10 14:50:33 +01:00
committed by GitHub
parent 50ee38c2ce
commit 5dfdd9ac63
18 changed files with 79 additions and 43 deletions

View File

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