| OLD | NEW |
| 1 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 1 # Copyright (c) 2010 The Chromium OS 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 import os, random, time | 5 import os, random, time |
| 6 from autotest_lib.client.bin import site_ui_test, site_utils, test | 6 from autotest_lib.client.bin import site_ui_test, site_utils, test |
| 7 from autotest_lib.client.common_lib import error | 7 from autotest_lib.client.common_lib import error |
| 8 | 8 |
| 9 class desktopui_WindowManagerHotkeys(site_ui_test.UITest): | 9 class desktopui_WindowManagerHotkeys(site_ui_test.UITest): |
| 10 version = 1 | 10 version = 1 |
| 11 | 11 |
| 12 def run_once(self): | 12 def run_once(self): |
| 13 import autox | 13 ax = self.get_autox() |
| 14 | |
| 15 # TODO: Set these in a single, standard place for all tests. | |
| 16 os.environ['DISPLAY'] = ':0' | |
| 17 os.environ['XAUTHORITY'] = '/home/chronos/.Xauthority' | |
| 18 ax = autox.AutoX() | |
| 19 | 14 |
| 20 # Start a terminal and wait for it to get the focus. | 15 # Start a terminal and wait for it to get the focus. |
| 21 # TODO: This is a bit of a hack. To watch for the terminal getting | 16 # TODO: This is a bit of a hack. To watch for the terminal getting |
| 22 # the focus, we create a new window, wait for it to get the focus, | 17 # the focus, we create a new window, wait for it to get the focus, |
| 23 # and then launch the terminal and wait for our window to lose the | 18 # and then launch the terminal and wait for our window to lose the |
| 24 # focus (AutoX isn't notified about focus events on the terminal | 19 # focus (AutoX isn't notified about focus events on the terminal |
| 25 # window itself). It's maybe cleaner to add a method to AutoX to | 20 # window itself). It's maybe cleaner to add a method to AutoX to |
| 26 # get the currently-focused window and then just poll that after | 21 # get the currently-focused window and then just poll that after |
| 27 # starting the terminal until it changes. | 22 # starting the terminal until it changes. |
| 28 win = ax.create_and_map_window() | 23 win = ax.create_and_map_window() |
| (...skipping 19 matching lines...) Expand all Loading... |
| 48 # Press the Print Screen key and check that a screenshot is written. | 43 # Press the Print Screen key and check that a screenshot is written. |
| 49 screenshot_filename = '/home/chronos/user/screenshot.png' | 44 screenshot_filename = '/home/chronos/user/screenshot.png' |
| 50 if os.access(screenshot_filename, os.F_OK): | 45 if os.access(screenshot_filename, os.F_OK): |
| 51 os.remove(screenshot_filename) | 46 os.remove(screenshot_filename) |
| 52 ax.send_hotkey('Print') | 47 ax.send_hotkey('Print') |
| 53 site_utils.poll_for_condition( | 48 site_utils.poll_for_condition( |
| 54 lambda: os.access(screenshot_filename, os.F_OK), | 49 lambda: os.access(screenshot_filename, os.F_OK), |
| 55 error.TestFail( | 50 error.TestFail( |
| 56 'Waiting for screenshot at %s' % screenshot_filename)) | 51 'Waiting for screenshot at %s' % screenshot_filename)) |
| 57 os.remove(screenshot_filename) | 52 os.remove(screenshot_filename) |
| OLD | NEW |