22 import ubuntuuitoolkit
23 from autopilot.matchers
import Eventually
24 from testtools.matchers
import Equals
25 from autopilot.utilities
import sleep
28 def hide_greeter_with_dbus():
29 dbus_proxy = _get_greeter_dbus_proxy()
30 if _is_greeter_active():
31 dbus_proxy.HideGreeter()
34 def show_greeter_with_dbus():
35 dbus_proxy = _get_greeter_dbus_proxy()
36 if not _is_greeter_active():
37 dbus_proxy.ShowGreeter()
40 def wait_for_greeter():
41 Eventually(Equals(
True), timeout=300).match(_is_greeter_active)
44 def wait_for_greeter_gone():
45 Eventually(Equals(
False), timeout=300).match(_is_greeter_active)
48 def _get_greeter_dbus_proxy():
49 bus = dbus.SessionBus()
50 return bus.get_object(
'com.canonical.UnityGreeter',
'/')
53 def _is_greeter_active():
55 dbus_proxy = _get_greeter_dbus_proxy()
56 return dbus_proxy.Get(
'com.canonical.UnityGreeter',
'IsActive')
61 class Greeter(ubuntuuitoolkit.UbuntuUIToolkitCustomProxyObjectBase):
62 """A helper that understands the greeter screen."""
64 def wait_swiped_away(self):
73 coverPage = self.select_single(objectName=
'coverPage')
74 if coverPage.showProgress == 0:
78 raise AssertionError(
"Greeter cover page still up after 10s")
81 """Swipe the greeter screen away."""
82 self.waiting.wait_for(
False)
83 coverPage = self.select_single(objectName=
'coverPage')
84 coverPage.showProgress.wait_for(1)
86 rect = self.globalRect
87 start_x = rect[0] + rect[2] - 3
88 start_y = int(rect[1] + rect[3] / 2)
89 stop_x = int(rect[0] + rect[2] * 0.2)
91 self.pointing_device.drag(start_x, start_y, stop_x, stop_y)
96 return self.select_single(
97 ubuntuuitoolkit.TextField, objectName=
'passwordInput')
def wait_swiped_away(self)