summaryrefslogtreecommitdiffstats
path: root/chrome/test/pyautolib
diff options
context:
space:
mode:
authornirnimesh@chromium.org <nirnimesh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-26 01:27:27 +0000
committernirnimesh@chromium.org <nirnimesh@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-26 01:27:27 +0000
commit10cc16b24c179cd583303b63d1703d39a0503d2d (patch)
treeb195714dd8dba07e2972e80ea0eb6edfb32f4981 /chrome/test/pyautolib
parent0f2612295c17a205ee2389267be095f48c491af3 (diff)
downloadchromium_src-10cc16b24c179cd583303b63d1703d39a0503d2d.zip
chromium_src-10cc16b24c179cd583303b63d1703d39a0503d2d.tar.gz
chromium_src-10cc16b24c179cd583303b63d1703d39a0503d2d.tar.bz2
Deal with browser restart scenarios in pyauto scripts on ChromeOS
TEST=chromeos_basic.ChromeosBasic.testRestart BUG=chromium-os:12523 Review URL: http://codereview.chromium.org/6591020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76133 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/test/pyautolib')
-rw-r--r--chrome/test/pyautolib/pyauto.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/chrome/test/pyautolib/pyauto.py b/chrome/test/pyautolib/pyauto.py
index 42b4b38..0224c8f 100644
--- a/chrome/test/pyautolib/pyauto.py
+++ b/chrome/test/pyautolib/pyauto.py
@@ -164,6 +164,11 @@ class PyUITest(pyautolib.PyUITestBase, unittest.TestCase):
def tearDown(self):
self.TearDown() # Destroy browser
+ @staticmethod
+ def CloseChromeOnChromeOS():
+ """Gracefully exit chrome on ChromeOS."""
+ subprocess.call(['pkill', 'chrome'])
+
def EnableChromeTestingOnChromeOS(self):
"""Enables the named automation interface on chromeos.
@@ -224,6 +229,15 @@ class PyUITest(pyautolib.PyUITestBase, unittest.TestCase):
Defaults to True, that is restarts browser with a clean
profile.
"""
+ if self.IsChromeOS():
+ self.TearDown()
+ if clear_profile:
+ self.CleanupBrowserProfileOnChromeOS()
+ self.CloseChromeOnChromeOS()
+ self.EnableChromeTestingOnChromeOS()
+ self.SetUp()
+ return
+ # Not chromeos
orig_clear_state = self.get_clear_profile()
self.CloseBrowserAndServer()
self.set_clear_profile(clear_profile)