Merge pull request #960 from iansf/fix_ios_deploy_crashes

Avoid crashing when an iOS device isn't connected
This commit is contained in:
Ian Fischer 2015-08-31 10:43:23 -07:00
commit 58e013c46e

View File

@ -465,6 +465,7 @@ class IOSDevice(object):
return False
if cls._is_connected:
return True
try:
cmd = [
'ios-deploy',
'--detect',
@ -475,12 +476,15 @@ class IOSDevice(object):
out = subprocess.check_output(cmd)
match = re.search(r'\[\.\.\.\.\] Found [^\)]*\) connected', out)
cls._is_connected = match is not None
except subprocess.CalledProcessError:
cls._is_connected = False
return cls._is_connected
@classmethod
def install_app(cls, ios_app_path):
if not cls.has_ios_deploy():
return
try:
cmd = [
'ios-deploy',
'--justlaunch',
@ -491,11 +495,14 @@ class IOSDevice(object):
]
logging.info(' '.join(cmd))
subprocess.check_call(cmd)
except subprocess.CalledProcessError:
pass
@classmethod
def copy_file(cls, bundle_id, local_path, device_path):
if not cls.has_ios_deploy():
return
try:
cmd = [
'ios-deploy',
'-t',
@ -509,6 +516,8 @@ class IOSDevice(object):
]
logging.info(' '.join(cmd))
subprocess.check_call(cmd)
except subprocess.CalledProcessError:
pass
class IOSSimulator(object):