23from autopilot.matchers
import Eventually
24from testtools.matchers
import Equals
25from autopilot.utilities
import sleep
28def hide_greeter_with_dbus():
29 dbus_proxy = _get_greeter_dbus_proxy()
30 if _is_greeter_active():
31 dbus_proxy.HideGreeter()
34def show_greeter_with_dbus():
35 dbus_proxy = _get_greeter_dbus_proxy()
36 if not _is_greeter_active():
37 dbus_proxy.ShowGreeter()
40def wait_for_greeter():
41 Eventually(Equals(
True), timeout=300).match(_is_greeter_active)
44def wait_for_greeter_gone():
45 Eventually(Equals(
False), timeout=300).match(_is_greeter_active)
48def _get_greeter_dbus_proxy():
49 bus = dbus.SessionBus()
50 return bus.get_object(
'com.lomiri.LomiriGreeter',
"/com/lomiri/LomiriGreeter")
53def _is_greeter_active():
55 dbus_proxy = _get_greeter_dbus_proxy()
56 return dbus_proxy.Get(
'com.lomiri.LomiriGreeter',
'IsActive')
61class Greeter(lomiriuitoolkit.LomiriUIToolkitCustomProxyObjectBase):
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 lomiriuitoolkit.TextField, objectName=
'promptField')