Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(824)

Side by Side Diff: tools/telemetry/telemetry/internal/platform/ios_device.py

Issue 1647513002: Delete tools/telemetry. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 import os
6 import logging
7 import re
8 import subprocess
9
10 from telemetry.core import platform
11 from telemetry.internal.platform import device
12
13
14 IOSSIM_BUILD_DIRECTORIES = [
15 'Debug-iphonesimulator',
16 'Profile-iphonesimulator',
17 'Release-iphonesimulator'
18 ]
19
20 class IOSDevice(device.Device):
21 def __init__(self):
22 super(IOSDevice, self).__init__(name='ios', guid='ios')
23
24 @classmethod
25 def GetAllConnectedDevices(cls, blacklist):
26 return []
27
28
29 def _IsIosDeviceAttached():
30 devices = subprocess.check_output('system_profiler SPUSBDataType', shell=True)
31 for line in devices.split('\n'):
32 if line and re.match(r'\s*(iPod|iPhone|iPad):', line):
33 return True
34 return False
35
36 def _IsIosSimulatorAvailable(chrome_root):
37 """Determines whether an iOS simulator is present in the local checkout.
38
39 Assumes the iOS simulator (iossim) and Chromium have already been built.
40
41 Returns:
42 True if at least one simulator is found, otherwise False.
43 """
44 for build_dir in IOSSIM_BUILD_DIRECTORIES:
45 iossim_path = os.path.join(
46 chrome_root, 'out', build_dir, 'iossim')
47 chromium_path = os.path.join(
48 chrome_root, 'out', build_dir, 'Chromium.app')
49
50 # If the iOS simulator and Chromium app are present, return True
51 if os.path.exists(iossim_path) and os.path.exists(chromium_path):
52 return True
53
54 return False
55
56 def FindAllAvailableDevices(options):
57 """Returns a list of available devices.
58 """
59 # TODO(baxley): Add support for all platforms possible. Probably Linux,
60 # probably not Windows.
61 if platform.GetHostPlatform().GetOSName() != 'mac':
62 return []
63
64 if options.chrome_root is None:
65 logging.warning('--chrome-root is not specified, skip iOS simulator tests.')
66 return []
67
68 if (not _IsIosDeviceAttached() and not
69 _IsIosSimulatorAvailable(options.chrome_root)):
70 return []
71
72 return [IOSDevice()]
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698