on xenial help sign in
Make settings wizard test smarter when clicking through the wifi page
commitda14b645684567d76b50f6ba0dc5f0913adea41a authorJosh Arenson <joshua.arenson@canonical.com> dateThu 21 May 2015, 11:01 (11 years ago) parentdb56c3f
2 files changed+25−1
tests/autopilot/unity8/settings_wizard/emulators/settings_wizard.py+20 tests/autopilot/unity8/settings_wizard/tests/test_settings_wizard.py+5−1
tests/autopilot/unity8/settings_wizard/emulators/settings_wizard.py+20
@@ -337,6 +337,14 @@ class WifiConnectPage(UbuntuUIToolkitCustomProxyObjectBase):
337337 return True
338338 return False
339339
340+ def _get_all_networks(self):
341+ try:
342+ networks = self.select_many('Standard', objectName='accessPoint',
343+ visible='True')
344+ except:
345+ networks = []
346+ return networks
347+
340348 def _get_network(self, ssid):
341349 return self.wait_select_single(
342350 'Standard', objectName='accessPoint', text=ssid, visible='True')
@@ -372,6 +380,18 @@ class WifiConnectPage(UbuntuUIToolkitCustomProxyObjectBase):
372380 return button
373381 raise introspection.dbus.StateNotFoundError
374382
383+ def is_any_network_checked(self):
384+ networks = self._get_all_networks()
385+ for network in networks:
386+ checkbox = network.select_single('CheckBox', visible='True')
387+ if checkbox.get_properties()['checked']:
388+ return True
389+ return False
390+
391+ def is_any_network_found(self):
392+ num_neworks = len(self._get_all_networks())
393+ return True if num_neworks > 0 else False
394+
375395 def is_network_checked(self, ssid):
376396 return self._get_network_checkbox(ssid).get_properties()['checked']
377397
tests/autopilot/unity8/settings_wizard/tests/test_settings_wizard.py+5−1
@@ -59,7 +59,11 @@ class SkipThroughSettingsWizardTestCase(tests.UnityTestCase):
5959 return reporting_page.continue_()
6060
6161 def _test_wifi_connect_page(self, wifi_connect_page):
62− return wifi_connect_page.advance_page()
62+ if wifi_connect_page.is_any_network_checked() or not \
63+ wifi_connect_page.is_any_network_found():
64+ return wifi_connect_page.continue_()
65+ else:
66+ return wifi_connect_page.skip()
6367
6468 def test_skipping_through_wizard(self):
6569 """ Most basic test of the settings wizard. Skip all skipable pages """