add samsungexynos7570 to list of known physical devices (#43042)

This commit is contained in:
Jonah Williams 2019-10-21 16:45:48 -07:00 committed by GitHub
parent 83878683c0
commit 31a4ff80c7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 3 deletions

View file

@ -32,7 +32,7 @@ import 'android_sdk.dart';
enum _HardwareType { emulator, physical }
/// Map to help our `isLocalEmulator` detection.
const Map<String, _HardwareType> _knownHardware = <String, _HardwareType>{
const Map<String, _HardwareType> _kKnownHardware = <String, _HardwareType>{
'goldfish': _HardwareType.emulator,
'qcom': _HardwareType.physical,
'ranchu': _HardwareType.emulator,
@ -42,6 +42,7 @@ const Map<String, _HardwareType> _knownHardware = <String, _HardwareType>{
'samsungexynos8890': _HardwareType.physical,
'samsungexynos8895': _HardwareType.physical,
'samsungexynos9810': _HardwareType.physical,
'samsungexynos7570': _HardwareType.physical,
};
bool allowHeapCorruptionOnWindows(int exitCode) {
@ -122,9 +123,9 @@ class AndroidDevice extends Device {
if (_isLocalEmulator == null) {
final String hardware = await _getProperty('ro.hardware');
printTrace('ro.hardware = $hardware');
if (_knownHardware.containsKey(hardware)) {
if (_kKnownHardware.containsKey(hardware)) {
// Look for known hardware models.
_isLocalEmulator = _knownHardware[hardware] == _HardwareType.emulator;
_isLocalEmulator = _kKnownHardware[hardware] == _HardwareType.emulator;
} else {
// Fall back to a best-effort heuristic-based approach.
final String characteristics = await _getProperty('ro.build.characteristics');

View file

@ -348,6 +348,14 @@ Use the 'android' tool to install them:
ProcessManager: () => mockProcessManager,
});
testUsingContext('knownPhysical Samsung SM G570M', () async {
hardware = 'samsungexynos7570';
final AndroidDevice device = AndroidDevice('test');
expect(await device.isLocalEmulator, false);
}, overrides: <Type, Generator>{
ProcessManager: () => mockProcessManager,
});
testUsingContext('knownEmulator', () async {
hardware = 'goldfish';
final AndroidDevice device = AndroidDevice('test');