blob: b9596ef6cebef52c0fd52aec0ec7d1882f556341 [file] [log] [blame] [edit]
# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import unittest
from systrace import util
from devil.android import device_utils
from devil.android.sdk import intent
from devil.android.sdk import keyevent
class BaseAgentTest(unittest.TestCase):
def setUp(self):
devices = device_utils.DeviceUtils.HealthyDevices()
self.browser = 'stable'
self.package_info = util.get_supported_browsers()[self.browser]
self.device = devices[0]
curr_browser = self.GetChromeProcessID()
if curr_browser is None:
self.StartBrowser()
def tearDown(self):
# Stop the browser after each test to ensure that it doesn't interfere
# with subsequent tests, e.g. by holding the devtools socket open.
self.device.ForceStop(self.package_info.package)
def StartBrowser(self):
# Turn on the device screen.
self.device.SetScreen(True)
# Unlock device.
self.device.SendKeyEvent(keyevent.KEYCODE_MENU)
# Start browser.
self.device.StartActivity(
intent.Intent(activity=self.package_info.activity,
package=self.package_info.package,
data='about:blank',
extras={'create_new_tab': True}),
blocking=True, force_stop=True)
def GetChromeProcessID(self):
return self.device.GetApplicationPids(
self.package_info.package, at_most_one=True)