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

Side by Side Diff: build/android/pylib/gtest/test_package_apk.py

Issue 338353004: [Android] Switch KillAll, StartActivity, and BroadcastIntent to DeviceUtils. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: appeasing windows Created 6 years, 6 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
« no previous file with comments | « build/android/pylib/forwarder.py ('k') | build/android/pylib/gtest/test_package_exe.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 """Defines TestPackageApk to help run APK-based native tests.""" 5 """Defines TestPackageApk to help run APK-based native tests."""
6 # pylint: disable=W0212 6 # pylint: disable=W0212
7 7
8 import logging 8 import logging
9 import os 9 import os
10 import shlex 10 import shlex
11 import sys 11 import sys
12 import tempfile 12 import tempfile
13 import time 13 import time
14 14
15 from pylib import android_commands 15 from pylib import android_commands
16 from pylib import constants 16 from pylib import constants
17 from pylib import pexpect 17 from pylib import pexpect
18 from pylib.device import device_errors 18 from pylib.device import device_errors
19 from pylib.device import intent
19 from pylib.gtest.test_package import TestPackage 20 from pylib.gtest.test_package import TestPackage
20 21
21 22
22 class TestPackageApk(TestPackage): 23 class TestPackageApk(TestPackage):
23 """A helper class for running APK-based native tests.""" 24 """A helper class for running APK-based native tests."""
24 25
25 def __init__(self, suite_name): 26 def __init__(self, suite_name):
26 """ 27 """
27 Args: 28 Args:
28 suite_name: Name of the test suite (e.g. base_unittests). 29 suite_name: Name of the test suite (e.g. base_unittests).
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 break 65 break
65 time.sleep(i) 66 time.sleep(i)
66 else: 67 else:
67 raise device_errors.DeviceUnreachableError( 68 raise device_errors.DeviceUnreachableError(
68 'Unable to find fifo on device %s ' % self._GetFifo()) 69 'Unable to find fifo on device %s ' % self._GetFifo())
69 args = shlex.split(device.old_interface.Adb()._target_arg) 70 args = shlex.split(device.old_interface.Adb()._target_arg)
70 args += ['shell', 'cat', self._GetFifo()] 71 args += ['shell', 'cat', self._GetFifo()]
71 return pexpect.spawn('adb', args, timeout=timeout, logfile=logfile) 72 return pexpect.spawn('adb', args, timeout=timeout, logfile=logfile)
72 73
73 def _StartActivity(self, device): 74 def _StartActivity(self, device):
74 device.old_interface.StartActivity( 75 device.StartActivity(
75 self._package_info.package, 76 intent.Intent(package=self._package_info.package,
76 self._package_info.activity, 77 activity=self._package_info.activity,
78 action='android.intent.action.MAIN'),
77 # No wait since the runner waits for FIFO creation anyway. 79 # No wait since the runner waits for FIFO creation anyway.
78 wait_for_completion=False, 80 blocking=False,
79 action='android.intent.action.MAIN',
80 force_stop=True) 81 force_stop=True)
81 82
82 #override 83 #override
83 def ClearApplicationState(self, device): 84 def ClearApplicationState(self, device):
84 device.old_interface.ClearApplicationState(self._package_info.package) 85 device.old_interface.ClearApplicationState(self._package_info.package)
85 # Content shell creates a profile on the sdscard which accumulates cache 86 # Content shell creates a profile on the sdscard which accumulates cache
86 # files over time. 87 # files over time.
87 if self.suite_name == 'content_browsertests': 88 if self.suite_name == 'content_browsertests':
88 try: 89 try:
89 device.RunShellCommand( 90 device.RunShellCommand(
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 self._StartActivity(device) 126 self._StartActivity(device)
126 finally: 127 finally:
127 self.tool.CleanUpEnvironment() 128 self.tool.CleanUpEnvironment()
128 logfile = android_commands.NewLineNormalizer(sys.stdout) 129 logfile = android_commands.NewLineNormalizer(sys.stdout)
129 return self._WatchFifo(device, timeout=10, logfile=logfile) 130 return self._WatchFifo(device, timeout=10, logfile=logfile)
130 131
131 #override 132 #override
132 def Install(self, device): 133 def Install(self, device):
133 self.tool.CopyFiles() 134 self.tool.CopyFiles()
134 device.Install(self.suite_path) 135 device.Install(self.suite_path)
OLDNEW
« no previous file with comments | « build/android/pylib/forwarder.py ('k') | build/android/pylib/gtest/test_package_exe.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698