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

Add display information to device identity.

This commit is contained in:
Simo Kinnunen 2014-01-30 16:53:49 +09:00
parent c45c081c6f
commit 1616840818
4 changed files with 52 additions and 0 deletions

View file

@ -52,5 +52,6 @@ module.exports.saveDeviceIdentity = function(serial, identity) {
, version: identity.version
, abi: identity.abi
, sdk: identity.sdk
, display: identity.display
}))
}

View file

@ -5,6 +5,7 @@ var Promise = require('bluebird')
var zmq = require('zmq')
var adbkit = require('adbkit')
var monkey = require('adbkit-monkey')
var request = Promise.promisifyAll(require('request'))
var logger = require('../util/logger')
var wire = require('../wire')
@ -18,6 +19,7 @@ var ChannelManager = require('../wire/channelmanager')
module.exports = function(options) {
var log = logger.createLogger('device')
var identity = Object.create(null)
var display = Object.create(null)
var vendor = Object.create(null)
var solo = wireutil.makePrivateChannel()
var channels = new ChannelManager()
@ -151,6 +153,31 @@ module.exports = function(options) {
log.info(chunk)
})
})
.then(function() {
return devutil.waitForPort(adb, options.serial, port)
})
.then(function(conn) {
conn.end()
var ours = options.ports.pop()
return adb.forwardAsync(
options.serial
, util.format('tcp:%d', ours)
, util.format('tcp:%d', port)
)
.then(function() {
return request.getAsync({
url: util.format(
'http://127.0.0.1:%d/api/v1/displays/0'
, ours
)
, json: true
})
})
.then(function(args) {
assert.ok('id' in args[1], 'Invalid response from HTTP API')
identity.display = args[1]
})
})
})
})
.then(function() {

View file

@ -99,6 +99,17 @@ module.exports = function(wire) {
, identity.version
, identity.abi
, identity.sdk
, new wire.DeviceDisplayMessage(
identity.display.id
, identity.display.width
, identity.display.height
, identity.display.orientation
, identity.display.xdpi
, identity.display.ydpi
, identity.display.fps
, identity.display.density
, identity.display.secure
)
)
return wireutil.envelope(wire.MessageType.DEVICE_IDENTITY, message)

View file

@ -95,6 +95,18 @@ enum DeviceManufacturer {
ZTE = 2900;
}
message DeviceDisplayMessage {
required uint32 id = 1;
required uint32 width = 2;
required uint32 height = 3;
required uint32 orientation = 4;
required uint32 xdpi = 5;
required uint32 ydpi = 6;
required double fps = 7;
required double density = 8;
required bool secure = 9;
}
message DeviceIdentityMessage {
required string serial = 1;
required DevicePlatform platform = 2;
@ -103,6 +115,7 @@ message DeviceIdentityMessage {
required string version = 5;
required string abi = 6;
required string sdk = 7;
required DeviceDisplayMessage display = 8;
}
message DeviceProperty {