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

Side by Side Diff: build/android/pylib/android_commands.py

Issue 10736049: Android: move functions added in third_party to android_commands. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Only restart adb server if running on emulator Created 8 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « build/android/emulator.py ('k') | build/android/pylib/single_test_runner.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Provides an interface to communicate with the device via the adb command. 5 """Provides an interface to communicate with the device via the adb command.
6 6
7 Assumes adb binary is currently on system path. 7 Assumes adb binary is currently on system path.
8 """ 8 """
9 9
10 import collections 10 import collections
(...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after
312 312
313 logging.info('>>> $' + install_command) 313 logging.info('>>> $' + install_command)
314 return self._adb.SendCommand(install_command, timeout_time=2*60) 314 return self._adb.SendCommand(install_command, timeout_time=2*60)
315 315
316 def MakeSystemFolderWritable(self): 316 def MakeSystemFolderWritable(self):
317 """Remounts the /system folder rw. """ 317 """Remounts the /system folder rw. """
318 out = self._adb.SendCommand('remount') 318 out = self._adb.SendCommand('remount')
319 if out.strip() != 'remount succeeded': 319 if out.strip() != 'remount succeeded':
320 raise errors.MsgException('Remount failed: %s' % out) 320 raise errors.MsgException('Remount failed: %s' % out)
321 321
322 def RestartAdbServer(self):
323 """Restart the adb server."""
324 self.KillAdbServer()
325 self.StartAdbServer()
326
327 def KillAdbServer(self):
328 """Kill adb server."""
329 adb_cmd = ['adb', 'kill-server']
330 return cmd_helper.RunCmd(adb_cmd)
331
332 def StartAdbServer(self):
333 """Start adb server."""
334 adb_cmd = ['adb', 'start-server']
335 return cmd_helper.RunCmd(adb_cmd)
336
337 def WaitForSystemBootCompleted(self, wait_time):
338 """Waits for targeted system's boot_completed flag to be set.
339
340 Args:
341 wait_time: time in seconds to wait
342
343 Raises:
344 WaitForResponseTimedOutError if wait_time elapses and flag still not
345 set.
346 """
347 logging.info('Waiting for system boot completed...')
348 self._adb.SendCommand('wait-for-device')
349 # Now the device is there, but system not boot completed.
350 # Query the sys.boot_completed flag with a basic command
351 boot_completed = False
352 attempts = 0
353 wait_period = 5
354 while not boot_completed and (attempts * wait_period) < wait_time:
355 output = self._adb.SendShellCommand('getprop sys.boot_completed',
356 retry_count=1)
357 output = output.strip()
358 if output == '1':
359 boot_completed = True
360 else:
361 # If 'error: xxx' returned when querying the flag, it means
362 # adb server lost the connection to the emulator, so restart the adb
363 # server.
364 if 'error:' in output:
365 self.RestartAdbServer()
366 time.sleep(wait_period)
367 attempts += 1
368 if not boot_completed:
369 raise errors.WaitForResponseTimedOutError(
370 'sys.boot_completed flag was not set after %s seconds' % wait_time)
371
322 def WaitForSdCardReady(self, timeout_time): 372 def WaitForSdCardReady(self, timeout_time):
323 """Wait for the SD card ready before pushing data into it.""" 373 """Wait for the SD card ready before pushing data into it."""
324 logging.info('Waiting for SD card ready...') 374 logging.info('Waiting for SD card ready...')
325 sdcard_ready = False 375 sdcard_ready = False
326 attempts = 0 376 attempts = 0
327 wait_period = 5 377 wait_period = 5
328 while not sdcard_ready and attempts * wait_period < timeout_time: 378 while not sdcard_ready and attempts * wait_period < timeout_time:
329 output = self.RunShellCommand('ls /sdcard/') 379 output = self.RunShellCommand('ls /sdcard/')
330 if len(output) > 0: 380 if len(output) > 0:
331 sdcard_ready = True 381 sdcard_ready = True
(...skipping 552 matching lines...) Expand 10 before | Expand all | Expand 10 after
884 if len(process_results) <= 8: 934 if len(process_results) <= 8:
885 continue 935 continue
886 # Column 0 is the executable name 936 # Column 0 is the executable name
887 # Column 1 is the pid 937 # Column 1 is the pid
888 # Column 8 is the Inode in use 938 # Column 8 is the Inode in use
889 if process_results[8] == socket_name: 939 if process_results[8] == socket_name:
890 pids.append( (int(process_results[1]), process_results[0]) ) 940 pids.append( (int(process_results[1]), process_results[0]) )
891 break 941 break
892 logging.info('PidsUsingDevicePort: %s', pids) 942 logging.info('PidsUsingDevicePort: %s', pids)
893 return pids 943 return pids
OLDNEW
« no previous file with comments | « build/android/emulator.py ('k') | build/android/pylib/single_test_runner.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698