on xenial help sign in
more robust indicator-client AP tests.
commit549dee1e5c29808473a2f0759fae2b931ac0da3b authorNick Dedekind <nicholas.dedekind@gmail.com> dateTue 9 Jul 2013, 11:18 (13 years ago) parentd147b7f
2 files changed+21−12
tests/autopilot/indicators_client/tests/__init__.py+8−2 tests/autopilot/indicators_client/tests/test_battery.py+13−10
tests/autopilot/indicators_client/tests/__init__.py+8−2
@@ -38,15 +38,21 @@ class IndicatorsTestCase(AutopilotTestCase):
3838 ('with touch', dict(input_device_class=Touch)),
3939 ]
4040
41− def setUp(self, geometry):
41+ def setUp(self, geometry, grid_size):
4242 self.pointing_device = Pointer(self.input_device_class.create())
4343 super(IndicatorsTestCase, self).setUp()
44+ if grid_size != "0":
45+ os.environ['GRID_UNIT_PX'] = grid_size
46+ self.grid_size = int(grid_size)
47+ else:
48+ self.grid_size = int(os.environ['GRID_UNIT_PX'])
49+
4450 if os.path.realpath(__file__).startswith("/usr/"):
4551 self.launch_test_installed(geometry)
4652 else:
4753 self.launch_test_local(geometry)
4854
49− def launch_test_local(self,geometry):
55+ def launch_test_local(self, geometry):
5056 if geometry != "0x0":
5157 self.app = self.launch_test_application("../../builddir/src/Panel/Indicators/client/indicators-client",
5258 "-geometry", geometry, app_type='qt')
tests/autopilot/indicators_client/tests/test_battery.py+13−10
@@ -17,23 +17,23 @@ import math
1717
1818class TestDisplayMenus(IndicatorsTestCase):
1919 def setUp(self):
20− super(TestDisplayMenus, self).setUp("384x640")
20+ super(TestDisplayMenus, self).setUp("400x800", "12")
2121
2222 # This opens the messaging menu so you don't have to do that in
2323 # every test case
24− battery_menu = self.main_window.get_battery_menu()
25− self.pointing_device.move_to_object(battery_menu)
24+ self.assertThat(lambda: self.main_window.get_battery_menu(), Eventually(NotEquals(None)));
25+ self.pointing_device.move_to_object(self.main_window.get_battery_menu())
2626 self.pointing_device.click()
2727
28− self.page = self.app.select_single("IndicatorsPage");
29− page_loader = self.app.select_single("IndicatorsPage/QQuickLoader", objectName="page_loader");
28+ fn_loader = lambda: self.app.select_single("IndicatorsPage/QQuickLoader", objectName="page_loader");
29+ self.assertThat(fn_loader, Eventually(NotEquals(None)));
30+ page_loader = fn_loader();
3031 self.assertThat(page_loader.progress, Eventually(Equals(1.0)))
3132
3233 def tearDown(self):
3334 # self.main_window.get_indicators_client().reset()
3435 super(TestDisplayMenus, self).tearDown()
3536
36−
3737 # START SECTION
3838 # We need to move these to emulators once autopilot supports emulators for
3939 # applications started with AutopilotTestCase.launch_test_application
@@ -67,8 +67,10 @@ class TestDisplayMenus(IndicatorsTestCase):
6767 def test_auto_bright_switch(self):
6868 """Test the auto-bright switch"""
6969
70− auto_brightness = self.app.select_single("SwitchMenuItem", objectName="auto-brightness")
71− self.assertThat(auto_brightness, NotEquals(None))
70+ # wait for the switch menu item
71+ fn_auto_brightness = lambda: self.app.select_single("SwitchMenuItem", objectName="auto-brightness");
72+ self.assertThat(fn_auto_brightness, Eventually(NotEquals(None)));
73+ auto_brightness = fn_auto_brightness();
7274
7375 old_ab_value = auto_brightness.checked
7476
@@ -80,8 +82,9 @@ class TestDisplayMenus(IndicatorsTestCase):
8082 def test_brightness_slider(self):
8183 """Test the auto-bright switch"""
8284
83− brightness_menu = self.app.select_single("SliderMenuItem", objectName="brightness")
84− self.assertThat(brightness_menu, NotEquals(None))
85+ fn_brightness_menu = lambda: self.app.select_single("SliderMenuItem", objectName="brightness");
86+ self.assertThat(fn_brightness_menu, Eventually(NotEquals(None)));
87+ brightness_menu = fn_brightness_menu();
8588
8689 old_ab_value = brightness_menu.value
8790 # find a new value to do to. At least 1/4 distance away from current value