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

Unified Diff: client/site_tests/desktopui_WindowManagerHotkeys/desktopui_WindowManagerHotkeys.py

Issue 1565001: test: Clean up site_login.py a bit. (Closed)
Patch Set: update one more call to attempt_logout() Created 10 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: client/site_tests/desktopui_WindowManagerHotkeys/desktopui_WindowManagerHotkeys.py
diff --git a/client/site_tests/desktopui_WindowManagerHotkeys/desktopui_WindowManagerHotkeys.py b/client/site_tests/desktopui_WindowManagerHotkeys/desktopui_WindowManagerHotkeys.py
index b8308c5828186275cfefae7a46bfa21c2ff19fdd..0048b150ae71f6d16cf080398901c47459e4f28d 100644
--- a/client/site_tests/desktopui_WindowManagerHotkeys/desktopui_WindowManagerHotkeys.py
+++ b/client/site_tests/desktopui_WindowManagerHotkeys/desktopui_WindowManagerHotkeys.py
@@ -3,52 +3,15 @@
# found in the LICENSE file.
import os, random, time
-from autotest_lib.client.bin import site_login, test
+from autotest_lib.client.bin import site_ui_test, site_utils, test
from autotest_lib.client.common_lib import error
-class desktopui_WindowManagerHotkeys(test.test):
+class desktopui_WindowManagerHotkeys(site_ui_test.UITest):
version = 1
- def setup(self):
- site_login.setup_autox(self)
-
- # TODO: This would be useful for other tests; put it somewhere else.
- def __poll_for_condition(
- self, condition, desc='', timeout=10, sleep_interval=0.1):
- """Poll until a condition becomes true.
-
- condition: function taking no args and returning bool
- desc: str description of the condition
- timeout: maximum number of seconds to wait
- sleep_interval: time to sleep between polls
-
- Raises:
- error.TestFail: if the condition doesn't become true
- """
- start_time = time.time()
- while True:
- if condition():
- return
- if time.time() + sleep_interval - start_time > timeout:
- raise error.TestFail(
- 'Timed out waiting for condition: %s' % desc)
- time.sleep(sleep_interval)
-
def run_once(self):
import autox
- # TODO: This should be abstracted out.
- if not site_login.logged_in():
- if not site_login.attempt_login(self, 'autox_script.json'):
- raise error.TestError('Could not log in')
- if not site_login.wait_for_window_manager():
- raise error.TestError('Window manager didn\'t start')
- # TODO: This is awful. We need someone (Chrome, the WM, etc.) to
- # announce when login is "done" -- that is, the initial Chrome
- # window isn't going to pop onscreen in the middle of the test.
- # For now, we just sleep a really long time.
- time.sleep(20)
-
# TODO: Set these in a single, standard place for all tests.
os.environ['DISPLAY'] = ':0'
os.environ['XAUTHORITY'] = '/home/chronos/.Xauthority'
@@ -76,9 +39,10 @@ class desktopui_WindowManagerHotkeys(test.test):
temp_filename = '/tmp/desktopup_WindowManagerHotkeys_%d' % time.time()
ax.send_text('touch %s\n' % temp_filename)
ax.send_text('exit\n')
- self.__poll_for_condition(
+ site_utils.poll_for_condition(
lambda: os.access(temp_filename, os.F_OK),
- desc='Waiting for %s to be created from terminal' % temp_filename)
+ error.TestFail(
+ 'Waiting for %s to be created from terminal' % temp_filename))
os.remove(temp_filename)
# Press the Print Screen key and check that a screenshot is written.
@@ -86,7 +50,8 @@ class desktopui_WindowManagerHotkeys(test.test):
if os.access(screenshot_filename, os.F_OK):
os.remove(screenshot_filename)
ax.send_hotkey('Print')
- self.__poll_for_condition(
+ site_utils.poll_for_condition(
lambda: os.access(screenshot_filename, os.F_OK),
- desc='Waiting for screenshot at %s' % screenshot_filename)
+ error.TestFail(
+ 'Waiting for screenshot at %s' % screenshot_filename))
os.remove(screenshot_filename)

Powered by Google App Engine
This is Rietveld 408576698