示例#1
0
    def test_settings_app(self):

        settings = Settings(self.marionette)
        settings.launch()

        # opening each subpage in Settings menu.  Privacy Control is not opened, because it is a separate app
        #some subpages have their own subpages, and they need to be opened as well.
        settings.open_wifi()
        self.take_screenshot('wifi')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_sim_manager()
        self.take_screenshot('sim_manager')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_call()
        self.take_screenshot('call')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_message()
        self.take_screenshot('message')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_cell_and_data()
        self.take_screenshot('cell_and_data')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_bluetooth()
        self.take_screenshot('bluetooth')
        settings.return_to_prev_menu(settings.screen_element)

        ##################### Internet sharing and its subpages ######################
        internet_settings_page = settings.open_internet_sharing()
        self.take_screenshot('internet_sharing')
        GaiaImageCompareTestCase.scroll(
            self.marionette,
            'down',
            internet_settings_page.screen_element.size['height'],
            screen=internet_settings_page.screen_element)

        self.take_screenshot('internet_sharing')
        hotspot_page = internet_settings_page.tap_hotspot_settings()
        self.take_screenshot('internet_sharing-hotspot')
        hotspot_page.tap_security_settings()
        self.take_screenshot('internet_sharing-hotspot-security')
        hotspot_page.confirm_security_settings()
        settings.return_to_prev_menu(internet_settings_page.screen_element)
        settings.return_to_prev_menu(settings.screen_element)
示例#2
0
    def test_toggle_bluetooth_settings(self):
        """Toggle Bluetooth via Settings - Networks & Connectivity

        https://moztrap.mozilla.org/manage/case/6071/
        """
        device_name = str(time.time())

        settings = Settings(self.marionette)
        settings.launch()

        self.assertFalse(self.data_layer.bluetooth_is_enabled)

        bluetooth_settings = settings.open_bluetooth()
        bluetooth_settings.enable_bluetooth()

        self.assertTrue(self.data_layer.bluetooth_is_enabled)

        bluetooth_settings.tap_rename_my_device()
        bluetooth_settings.type_phone_name(device_name)
        bluetooth_settings.tap_update_device_name_ok()

        self.assertEquals(bluetooth_settings.device_name, device_name)

        bluetooth_settings.enable_visible_to_all()

        self.assertTrue(self.data_layer.bluetooth_is_discoverable)
        self.assertEquals(self.data_layer.bluetooth_name, device_name)
示例#3
0
    def test_settings_app(self):

        settings = Settings(self.marionette)
        settings.launch()

        # opening each subpage in Settings menu.  Privacy Control is not opened, because it is a separate app
        #some subpages have their own subpages, and they need to be opened as well.
        settings.open_wifi()
        self.take_screenshot('wifi')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_sim_manager()
        self.take_screenshot('sim_manager')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_call()
        self.take_screenshot('call')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_message()
        self.take_screenshot('message')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_cell_and_data()
        self.take_screenshot('cell_and_data')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_bluetooth()
        self.take_screenshot('bluetooth')
        settings.return_to_prev_menu(settings.screen_element)

        ##################### Internet sharing and its subpages ######################
        internet_settings_page = settings.open_internet_sharing()
        self.take_screenshot('internet_sharing')
        GaiaImageCompareTestCase.scroll(self.marionette, 'down', internet_settings_page.screen_element.size['height'],
                                        screen = internet_settings_page.screen_element)

        self.take_screenshot('internet_sharing')
        hotspot_page = internet_settings_page.tap_hotspot_settings()
        self.take_screenshot('internet_sharing-hotspot')
        hotspot_page.tap_security_settings()
        self.take_screenshot('internet_sharing-hotspot-security')
        hotspot_page.confirm_security_settings()
        settings.return_to_prev_menu(internet_settings_page.screen_element)
        settings.return_to_prev_menu(settings.screen_element)
示例#4
0
    def test_post_bluetooth(self):

        lock_screen = LockScreen(self.marionette)
        homescreen = lock_screen.unlock()

        settings = Settings(self.marionette)
        settings.launch()
        bluetooth_settings = settings.open_bluetooth()

        self.data_layer.bluetooth_disable() # make sure it starts out disabled
        self.data_layer.bluetooth_enable()
        print "Enabled bluetooth"
        time.sleep(20)
        # Sometimes the BT device doesn't show up in the list right off. Try and click it, 
        # if we can't then do an actual search and then try to click it again
        print "First Try"
        if not bluetooth_settings.tap_device('HC-06'):
            print "About to search for devices"
            bluetooth_settings.tap_search_for_devices()
            time.sleep(1)
            print "Second Try"
            if not bluetooth_settings.tap_device('HC-06'):
                assert False, "Unable to find bluetooth device 'HC-06'..."
        keyboard = Keyboard(self.marionette)
        #time.sleep(1)
        keyboard.send("1234")
        keyboard.tap_enter()
        time.sleep(35)
        print "Attempting to unpair with device"
        bluetooth_settings.refresh_root_element()
        if bluetooth_settings.tap_device('HC-06'):
            print "Confirming unpair"
            time.sleep(2)
            bluetooth_settings.tap_confirm_unpair_device()
            time.sleep(10)
            print "Device unpaired"
        print "Done sleep, disabling bluetooth"
        self.data_layer.bluetooth_disable()
        print "Disabled bluetooth"

        self.device.turn_screen_off()
        print ""
        print "Running Post Bluetooth Test"
        self.runPowerTest("post_idle_bluetooth", "Settings", "settings")
示例#5
0
    def test_post_bluetooth(self):

        lock_screen = LockScreen(self.marionette)
        homescreen = lock_screen.unlock()

        settings = Settings(self.marionette)
        settings.launch()
        bluetooth_settings = settings.open_bluetooth()

        self.data_layer.bluetooth_disable()  # make sure it starts out disabled
        self.data_layer.bluetooth_enable()
        print "Enabled bluetooth"
        time.sleep(20)
        # Sometimes the BT device doesn't show up in the list right off. Try and click it,
        # if we can't then do an actual search and then try to click it again
        print "First Try"
        if not bluetooth_settings.tap_device('HC-06'):
            print "About to search for devices"
            bluetooth_settings.tap_search_for_devices()
            time.sleep(1)
            print "Second Try"
            if not bluetooth_settings.tap_device('HC-06'):
                assert False, "Unable to find bluetooth device 'HC-06'..."
        keyboard = Keyboard(self.marionette)
        #time.sleep(1)
        keyboard.send("1234")
        keyboard.tap_enter()
        time.sleep(35)
        print "Attempting to unpair with device"
        bluetooth_settings.refresh_root_element()
        if bluetooth_settings.tap_device('HC-06'):
            print "Confirming unpair"
            time.sleep(2)
            bluetooth_settings.tap_confirm_unpair_device()
            time.sleep(10)
            print "Device unpaired"
        print "Done sleep, disabling bluetooth"
        self.data_layer.bluetooth_disable()
        print "Disabled bluetooth"

        self.device.turn_screen_off()
        print ""
        print "Running Post Bluetooth Test"
        self.runPowerTest("post_idle_bluetooth", "Settings", "settings")
示例#6
0
    def test_settings_app(self):
        settings = Settings(self.marionette)
        settings.launch()

        # opening each subpage in Settings menu.
        # some subpages have their own subpages, and they need to be opened as well.
        #################### Wi-Fi and its subpages ######################
        wifi_page = settings.open_wifi()
        Wait(self.marionette).until(lambda m: wifi_page.is_wifi_enabled is True)

        self.take_screenshot('wifi-enabled')
        wifi_page.tap_connect_with_wps()
        self.take_screenshot('wifi-wps')
        settings.return_to_prev_menu(wifi_page.screen_element, wifi_page.wps_screen_element)
        self.marionette.execute_script('arguments[0].scrollIntoView(false);', [wifi_page.manage_network_button])
        wifi_page.tap_manage_networks()
        wifi_page.tap_join_hidden_network()
        wifi_page.tap_security_selector()
        self.take_screenshot('wifi-securityType', top_frame=True)
        wifi_page.tap_security_ok()
        self.take_screenshot('wifi-joinHidden')
        settings.return_to_prev_menu(wifi_page.manage_network_screen_element,
                                     wifi_page.join_hidden_network_screen_element)
        self.take_screenshot('wifi-manageNetwork')
        settings.return_to_prev_menu(wifi_page.screen_element, wifi_page.manage_network_screen_element)
        wifi_page.tap_manage_certs()
        wifi_page.tap_import_certs()
        self.take_screenshot('wifi-importCert')
        settings.return_to_prev_menu(wifi_page.manage_certs_screen_element, wifi_page.select_certs_screen_element)
        self.take_screenshot('wifi-manageCert')
        settings.return_to_prev_menu(wifi_page.screen_element, wifi_page.manage_certs_screen_element)
        wifi_page.disable_wifi()
        self.take_screenshot('wifi-disabled')
        settings.return_to_prev_menu(settings.screen_element, wifi_page.screen_element)

        #################### Sim manager and its subpages ######################
        sim_page = settings.open_sim_manager()
        self.take_screenshot('sim_manager')
        GaiaImageCompareTestCase.scroll(self.marionette, 'down',
                                        sim_page.screen_element.size['height'],
                                        screen = sim_page.screen_element)
        self.take_screenshot('sim_manager')
        sim_page.tap_sim_security()
        sim_page.enable_sim_pin()
        self.take_screenshot('sim_manager-pin_page')
        settings.return_to_prev_menu(sim_page.security_screen_element,
                                     sim_page.sim_pin_screen_element)
        self.take_screenshot('sim_manager-security')
        settings.return_to_prev_menu(sim_page.screen_element, sim_page.security_screen_element)
        settings.return_to_prev_menu(settings.screen_element, sim_page.screen_element)

        ################### Call Settings and its subpages ######################
        cs_page = settings.open_call()
        self.take_screenshot('cs-selectSIM')
        cs_page.tap_sim_1()
        self.take_screenshot('callsettings')
        cs_page.tap_voicemail()
        self.take_screenshot('voicemail')
        settings.return_to_prev_menu(cs_page.cs_screen_element, cs_page.vm_screen_element)

        cs_page.tap_caller_id_selection()
        self.take_screenshot('callerID', top_frame=True)
        cs_page.confirm_caller_id_selection()

        cs_page.tap_fixed_dialing()
        self.take_screenshot('fixeddialing')
        cs_page.tap_auth_numbers()
        self.take_screenshot('authNumbers')
        settings.return_to_prev_menu(cs_page.fixed_dialing_screen_element,
                                     cs_page.auth_screen_element)
        cs_page.enable_fixed_dialing()
        self.take_screenshot('enableFDN')
        settings.return_to_prev_menu(cs_page.fixed_dialing_screen_element,
                                     cs_page.fixed_dialing_simpin_screen_element)
        settings.return_to_prev_menu(cs_page.cs_screen_element,
                                     cs_page.fixed_dialing_screen_element)

        cs_page.tap_call_forwarding()
        self.take_screenshot('callforward_init')
        cs_page.wait_until_call_forwarding_info_received()
        self.take_screenshot('callforward')
        cs_page.tap_always_forward()
        self.take_screenshot('alwaysFwd')
        settings.return_to_prev_menu(cs_page.call_forwarding_screen_element,
                                     cs_page.call_forwarding_always_screen_element)
        cs_page.tap_forward_when_busy()
        self.take_screenshot('busyFwd')
        settings.return_to_prev_menu(cs_page.call_forwarding_screen_element,
                                     cs_page.call_forwarding_busy_screen_element)
        cs_page.tap_forward_unanswered()
        self.take_screenshot('unansweredFwd')
        settings.return_to_prev_menu(cs_page.call_forwarding_screen_element,
                                     cs_page.call_forwarding_unans_screen_element)
        cs_page.tap_forward_unreachable()
        self.take_screenshot('unreachFwd')
        settings.return_to_prev_menu(cs_page.call_forwarding_screen_element,
                                     cs_page.call_forwarding_unreach_screen_element)
        settings.return_to_prev_menu(cs_page.cs_screen_element, cs_page.call_forwarding_screen_element)

        cs_page.tap_call_barring()
        self.take_screenshot('callBarring-init')
        cs_page.wait_until_call_barring_info_received()
        self.take_screenshot('callBarring')
        GaiaImageCompareTestCase.scroll(self.marionette, 'down',
                                        cs_page.call_barring_screen_element.size['height'],
                                        screen = cs_page.call_barring_screen_element)
        self.take_screenshot('callBarring')
        cs_page.tap_change_passcode()
        self.take_screenshot('callBarring-passcode')
        settings.return_to_prev_menu(cs_page.call_barring_screen_element,
                                     cs_page.call_barring_passcode_screen_element)
        cs_page.tap_call_barring_all()
        self.take_screenshot('callBarring-passcode2')
        cs_page.tap_call_barring_all_cancel()
        settings.return_to_prev_menu(cs_page.cs_screen_element, cs_page.call_barring_screen_element)
        settings.return_to_prev_menu(cs_page.screen_element, cs_page.cs_screen_element)
        settings.return_to_prev_menu(settings.screen_element, cs_page.screen_element)

        ################## Messaging Settings and its subpages ######################
        messaging_page = settings.open_message()
        self.take_screenshot('message')
        GaiaImageCompareTestCase.scroll(self.marionette, 'down',
                                        messaging_page.screen_element.size['height'],
                                        screen = messaging_page.screen_element)
        self.take_screenshot('message')
        messaging_page.tap_auto_retrieve_selector()
        self.take_screenshot('message-autoretrieve_options',top_frame=True)
        messaging_page.close_retrieve_dialog()
        messaging_page.select_sim_1()
        self.take_screenshot('message-sim_1')
        settings.return_to_prev_menu(messaging_page.screen_element,
                                     messaging_page.settings_screen_element)
        settings.return_to_prev_menu(settings.screen_element, messaging_page.screen_element)

        ################### Cellular & Data and its subpages ######################
        cell_data_page = settings.open_cell_and_data()
        self.take_screenshot('cell_and_data')
        cell_data_page.enable_data()
        self.take_screenshot('data_enable_prompt')
        cell_data_page.data_prompt.turn_on()
        Wait(self.marionette).until(lambda m: cell_data_page.is_data_toggle_checked is True)
        cell_data_page.enable_roaming()
        self.take_screenshot('roaming_enable_prompt')
        cell_data_page.data_prompt.turn_on()
        Wait(self.marionette).until(lambda m: cell_data_page.is_roaming_toggle_checked is True)
        self.take_screenshot('cell_and_data_enabled')
        sim_settings_page = cell_data_page.tap_sim_1_setting()
        self.take_screenshot('sim_1_setting')
        sim_settings_page.tap_network_operator()
        self.take_screenshot('network_op')
        sim_settings_page.tap_network_type()
        self.take_screenshot('cell_network_type',top_frame=True)
        sim_settings_page.confirm_network_type()
        settings.return_to_prev_menu(sim_settings_page.screen_element,
                                     sim_settings_page.network_op_screen_element)
        sim_settings_page.tap_apn_settings()
        self.take_screenshot('apn_settings')
        sim_settings_page.tap_reset_to_default()
        self.take_screenshot('apn_setting_reset')
        sim_settings_page.tap_cancel_reset()
        sim_settings_page.tap_data_settings()
        self.take_screenshot('apn_list')  # all other settings show the same dialog
        sim_settings_page.tap_add_new_apn()
        self.take_screenshot('apn_editor')
        for i in range(0, 2):
            GaiaImageCompareTestCase.scroll(self.marionette, 'down',
                                            sim_settings_page.apn_editor_screen_element.size['height'],
                                            screen = sim_settings_page.apn_editor_screen_element)
            self.take_screenshot('apn_editor')
        sim_settings_page.select_authentication()
        self.take_screenshot('apn_authentication', top_frame=True)
        sim_settings_page.confirm_apn_selection()
        sim_settings_page.select_protocol()
        self.take_screenshot('apn_protocol', top_frame=True)
        sim_settings_page.confirm_apn_selection()
        sim_settings_page.select_roaming_protocol()
        self.take_screenshot('apn_roaming', top_frame=True)
        sim_settings_page.confirm_apn_selection()

        settings.return_to_prev_menu(sim_settings_page.data_settings_screen_element,
                                     sim_settings_page.apn_editor_screen_element)
        settings.return_to_prev_menu(sim_settings_page.apn_settings_screen_element,
                                     sim_settings_page.data_settings_screen_element)
        settings.return_to_prev_menu(sim_settings_page.screen_element,
                                     sim_settings_page.apn_settings_screen_element)
        settings.return_to_prev_menu(cell_data_page.screen_element, sim_settings_page.screen_element)
        settings.return_to_prev_menu(settings.screen_element, cell_data_page.screen_element)

        ################# Bluetooth and its subpages ######################
        bluetooth_page = settings.open_bluetooth()
        self.take_screenshot('bluetooth-disabled')
        bluetooth_page.refresh_root_element()  # frame is switched, need to refresh the root
        bluetooth_page.enable_bluetooth()
        self.take_screenshot('bluetooth-enabled')
        bluetooth_page.refresh_root_element()
        bluetooth_page.tap_rename_my_device()
        self.take_screenshot('bluetooth-renameDevice')
        bluetooth_page.refresh_root_element()
        bluetooth_page.tap_update_device_name_ok()
        bluetooth_page.disable_bluetooth()
        settings.return_to_prev_menu(settings.screen_element, bluetooth_page.screen_element)

        ##################### Internet sharing and its subpages ######################
        internet_settings_page = settings.open_internet_sharing()
        self.take_screenshot('internet_sharing')
        internet_settings_page.enable_hotspot()
        self.take_screenshot('internet_sharing-hotspot_enabled')
        hotspot_page = internet_settings_page.tap_hotspot_settings()
        self.take_screenshot('internet_sharing-hotspot')
        hotspot_page.tap_security_settings()
        self.take_screenshot('internet_sharing-hotspot-security',top_frame=True)
        hotspot_page.confirm_security_settings()
        settings.return_to_prev_menu(internet_settings_page.screen_element,
                                     hotspot_page.screen_element)
        settings.return_to_prev_menu(settings.screen_element,
                                     internet_settings_page.screen_element)
示例#7
0
    def test_settings_app(self):

        settings = Settings(self.marionette)
        settings.launch()

        self.take_screenshot('main')
        for i in range(0, 4):
            GaiaImageCompareTestCase.scroll(self.marionette, 'down',
                                            settings.screen_element.size['height'], screen=settings.screen_element)
            self.take_screenshot('main')

        #opening each subpage in Settings menu.  Privacy Control is not opened, because it is a separate app
        #some subpages have their own subpages, and they need to be opened as well.
        settings.open_wifi()
        self.take_screenshot('wifi')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_sim_manager()
        self.take_screenshot('sim_manager')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_call()
        self.take_screenshot('call')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_message()
        self.take_screenshot('message')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_cell_and_data()
        self.take_screenshot('cell_and_data')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_bluetooth()
        self.take_screenshot('bluetooth')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_internet_sharing()
        self.take_screenshot('internet_sharing')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_sound()
        self.take_screenshot('sound')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_display()
        self.take_screenshot('display')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_homescreen()
        self.take_screenshot('homescreen')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_search()
        self.take_screenshot('search')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_navigation()
        self.take_screenshot('navigation')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_notification()
        self.take_screenshot('notification')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_date_and_time()
        self.take_screenshot('date_and_time')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_language()
        self.take_screenshot('language')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_keyboard()
        self.take_screenshot('keyboard')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_themes()
        self.take_screenshot('themes')
        settings.return_to_prev_menu(settings.screen_element, gaia_header=False)

        settings.open_addons()
        self.take_screenshot('addons')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_achievements()
        self.take_screenshot('achievements')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_firefox_accounts()
        self.take_screenshot('firefox_accounts')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_findmydevice()
        self.take_screenshot('findmydevice')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_screen_lock()
        self.take_screenshot('screen_lock')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_app_permissions()
        self.take_screenshot('app_permissions')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_do_not_track()
        self.take_screenshot('do_not_track')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_browsing_privacy()
        self.take_screenshot('browsing_privacy')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_media_storage()
        self.take_screenshot('media_storage')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_application_storage()
        self.take_screenshot('application_storage')
        settings.return_to_prev_menu(settings.screen_element)

        ### Device Information and its sub pages
        device_info_page = settings.open_device_info()
        self.take_screenshot('dev_info')
        GaiaImageCompareTestCase.scroll(self.marionette, 'down', device_info_page.screen_element.size['height'],
                                        screen=device_info_page.screen_element)
        self.take_screenshot('dev_info')

        moreinfo_page = device_info_page.tap_more_info()
        self.take_screenshot('dev_info-more_info')
        GaiaImageCompareTestCase.scroll(self.marionette, 'down', device_info_page.screen_element.size['height'],
                                        screen=moreinfo_page.screen)
        self.take_screenshot('dev_info-more_info')
        settings.return_to_prev_menu(device_info_page.screen_element)

        device_info_page.tap_reset_phone()
        self.take_screenshot('dev_info-reset')
        device_info_page.confirm_reset(False)

        device_info_page.tap_update_frequency()
        self.take_screenshot('dev_info-update-freq')
        device_info_page.exit_update_frequency()
        settings.return_to_prev_menu(settings.screen_element)

        ### Downloads page
        settings.open_downloads()
        self.take_screenshot('downloads')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_battery()
        self.take_screenshot('battery')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_accessibility()
        self.take_screenshot('accessibility')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_developer()
        self.take_screenshot('developer')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_improve()
        self.take_screenshot('improve')
        settings.return_to_prev_menu(settings.screen_element)

        settings.open_help()
        self.take_screenshot('help')
        settings.return_to_prev_menu(settings.screen_element)
示例#8
0
    def test_settings_app(self):
        settings = Settings(self.marionette)
        settings.launch()

        # opening each subpage in Settings menu.
        # some subpages have their own subpages, and they need to be opened as well.
        #################### Wi-Fi and its subpages ######################
        wifi_page = settings.open_wifi()
        Wait(
            self.marionette).until(lambda m: wifi_page.is_wifi_enabled is True)

        self.take_screenshot('wifi-enabled')
        wifi_page.tap_connect_with_wps()
        self.take_screenshot('wifi-wps')
        settings.return_to_prev_menu(wifi_page.screen_element,
                                     wifi_page.wps_screen_element)
        self.marionette.execute_script('arguments[0].scrollIntoView(false);',
                                       [wifi_page.manage_network_button])
        wifi_page.tap_manage_networks()
        wifi_page.tap_join_hidden_network()
        wifi_page.tap_security_selector()
        self.take_screenshot('wifi-securityType', top_frame=True)
        wifi_page.tap_security_ok()
        self.take_screenshot('wifi-joinHidden')
        settings.return_to_prev_menu(
            wifi_page.manage_network_screen_element,
            wifi_page.join_hidden_network_screen_element)
        self.take_screenshot('wifi-manageNetwork')
        settings.return_to_prev_menu(wifi_page.screen_element,
                                     wifi_page.manage_network_screen_element)
        wifi_page.tap_manage_certs()
        wifi_page.tap_import_certs()
        self.take_screenshot('wifi-importCert')
        settings.return_to_prev_menu(wifi_page.manage_certs_screen_element,
                                     wifi_page.select_certs_screen_element)
        self.take_screenshot('wifi-manageCert')
        settings.return_to_prev_menu(wifi_page.screen_element,
                                     wifi_page.manage_certs_screen_element)
        wifi_page.disable_wifi()
        self.take_screenshot('wifi-disabled')
        settings.return_to_prev_menu(settings.screen_element,
                                     wifi_page.screen_element)

        #################### Sim manager and its subpages ######################
        sim_page = settings.open_sim_manager()
        self.take_screenshot('sim_manager')
        GaiaImageCompareTestCase.scroll(self.marionette,
                                        'down',
                                        sim_page.screen_element.size['height'],
                                        screen=sim_page.screen_element)
        self.take_screenshot('sim_manager')
        sim_page.tap_sim_security()
        sim_page.enable_sim_pin()
        self.take_screenshot('sim_manager-pin_page')
        settings.return_to_prev_menu(sim_page.security_screen_element,
                                     sim_page.sim_pin_screen_element)
        self.take_screenshot('sim_manager-security')
        settings.return_to_prev_menu(sim_page.screen_element,
                                     sim_page.security_screen_element)
        settings.return_to_prev_menu(settings.screen_element,
                                     sim_page.screen_element)

        ################### Call Settings and its subpages ######################
        cs_page = settings.open_call()
        self.take_screenshot('cs-selectSIM')
        cs_page.tap_sim_1()
        self.take_screenshot('callsettings')
        cs_page.tap_voicemail()
        self.take_screenshot('voicemail')
        settings.return_to_prev_menu(cs_page.cs_screen_element,
                                     cs_page.vm_screen_element)

        cs_page.tap_caller_id_selection()
        self.take_screenshot('callerID', top_frame=True)
        cs_page.confirm_caller_id_selection()

        cs_page.tap_fixed_dialing()
        self.take_screenshot('fixeddialing')
        cs_page.tap_auth_numbers()
        self.take_screenshot('authNumbers')
        settings.return_to_prev_menu(cs_page.fixed_dialing_screen_element,
                                     cs_page.auth_screen_element)
        cs_page.enable_fixed_dialing()
        self.take_screenshot('enableFDN')
        settings.return_to_prev_menu(
            cs_page.fixed_dialing_screen_element,
            cs_page.fixed_dialing_simpin_screen_element)
        settings.return_to_prev_menu(cs_page.cs_screen_element,
                                     cs_page.fixed_dialing_screen_element)

        cs_page.tap_call_forwarding()
        self.take_screenshot('callforward_init')
        cs_page.wait_until_call_forwarding_info_received()
        self.take_screenshot('callforward')
        cs_page.tap_always_forward()
        self.take_screenshot('alwaysFwd')
        settings.return_to_prev_menu(
            cs_page.call_forwarding_screen_element,
            cs_page.call_forwarding_always_screen_element)
        cs_page.tap_forward_when_busy()
        self.take_screenshot('busyFwd')
        settings.return_to_prev_menu(
            cs_page.call_forwarding_screen_element,
            cs_page.call_forwarding_busy_screen_element)
        cs_page.tap_forward_unanswered()
        self.take_screenshot('unansweredFwd')
        settings.return_to_prev_menu(
            cs_page.call_forwarding_screen_element,
            cs_page.call_forwarding_unans_screen_element)
        cs_page.tap_forward_unreachable()
        self.take_screenshot('unreachFwd')
        settings.return_to_prev_menu(
            cs_page.call_forwarding_screen_element,
            cs_page.call_forwarding_unreach_screen_element)
        settings.return_to_prev_menu(cs_page.cs_screen_element,
                                     cs_page.call_forwarding_screen_element)

        cs_page.tap_call_barring()
        cs_page.wait_until_call_barring_info_received(
        )  # this sometimes happens in less than a second,
        # making it difficult to obtain init view
        self.take_screenshot('callBarring')
        GaiaImageCompareTestCase.scroll(
            self.marionette,
            'down',
            cs_page.call_barring_screen_element.size['height'],
            screen=cs_page.call_barring_screen_element)
        self.take_screenshot('callBarring')
        cs_page.tap_change_passcode()
        self.take_screenshot('callBarring-passcode')
        settings.return_to_prev_menu(
            cs_page.call_barring_screen_element,
            cs_page.call_barring_passcode_screen_element)
        cs_page.tap_call_barring_all()
        self.take_screenshot('callBarring-passcode2')
        cs_page.tap_call_barring_all_cancel()
        settings.return_to_prev_menu(cs_page.cs_screen_element,
                                     cs_page.call_barring_screen_element)
        settings.return_to_prev_menu(cs_page.screen_element,
                                     cs_page.cs_screen_element)
        settings.return_to_prev_menu(settings.screen_element,
                                     cs_page.screen_element)

        ################## Messaging Settings and its subpages ######################
        messaging_page = settings.open_message()
        self.take_screenshot('message')
        GaiaImageCompareTestCase.scroll(
            self.marionette,
            'down',
            messaging_page.screen_element.size['height'],
            screen=messaging_page.screen_element)
        self.take_screenshot('message')
        messaging_page.tap_auto_retrieve_selector()
        self.take_screenshot('message-autoretrieve_options', top_frame=True)
        messaging_page.close_retrieve_dialog()
        messaging_page.select_sim_1()
        self.take_screenshot('message-sim_1')
        settings.return_to_prev_menu(messaging_page.screen_element,
                                     messaging_page.settings_screen_element)
        settings.return_to_prev_menu(settings.screen_element,
                                     messaging_page.screen_element)

        ################### Cellular & Data and its subpages ######################
        cell_data_page = settings.open_cell_and_data()
        self.take_screenshot('cell_and_data')
        cell_data_page.enable_data()
        self.take_screenshot('data_enable_prompt')
        cell_data_page.data_prompt.turn_on()
        Wait(self.marionette).until(
            lambda m: cell_data_page.is_data_toggle_checked is True)
        cell_data_page.enable_roaming()
        self.take_screenshot('roaming_enable_prompt')
        cell_data_page.data_prompt.turn_on()
        Wait(self.marionette).until(
            lambda m: cell_data_page.is_roaming_toggle_checked is True)
        self.take_screenshot('cell_and_data_enabled')
        sim_settings_page = cell_data_page.tap_sim_1_setting()
        self.take_screenshot('sim_1_setting')
        sim_settings_page.tap_network_operator()
        self.take_screenshot('network_op')
        sim_settings_page.tap_network_type()
        self.take_screenshot('cell_network_type', top_frame=True)
        sim_settings_page.confirm_network_type()
        settings.return_to_prev_menu(
            sim_settings_page.screen_element,
            sim_settings_page.network_op_screen_element)
        sim_settings_page.tap_apn_settings()
        self.take_screenshot('apn_settings')
        sim_settings_page.tap_reset_to_default()
        self.take_screenshot('apn_setting_reset')
        sim_settings_page.tap_cancel_reset()
        sim_settings_page.tap_data_settings()
        self.take_screenshot(
            'apn_list')  # all other settings show the same dialog
        sim_settings_page.tap_add_new_apn()
        self.take_screenshot('apn_editor')
        for i in range(0, 2):
            GaiaImageCompareTestCase.scroll(
                self.marionette,
                'down',
                sim_settings_page.apn_editor_screen_element.size['height'],
                screen=sim_settings_page.apn_editor_screen_element)
            self.take_screenshot('apn_editor')
        sim_settings_page.select_authentication()
        self.take_screenshot('apn_authentication', top_frame=True)
        sim_settings_page.confirm_apn_selection()
        sim_settings_page.select_protocol()
        self.take_screenshot('apn_protocol', top_frame=True)
        sim_settings_page.confirm_apn_selection()
        sim_settings_page.select_roaming_protocol()
        self.take_screenshot('apn_roaming', top_frame=True)
        sim_settings_page.confirm_apn_selection()

        settings.return_to_prev_menu(
            sim_settings_page.data_settings_screen_element,
            sim_settings_page.apn_editor_screen_element)
        settings.return_to_prev_menu(
            sim_settings_page.apn_settings_screen_element,
            sim_settings_page.data_settings_screen_element)
        settings.return_to_prev_menu(
            sim_settings_page.screen_element,
            sim_settings_page.apn_settings_screen_element)
        settings.return_to_prev_menu(cell_data_page.screen_element,
                                     sim_settings_page.screen_element)
        settings.return_to_prev_menu(settings.screen_element,
                                     cell_data_page.screen_element)

        ################# Bluetooth and its subpages ######################
        bluetooth_page = settings.open_bluetooth()
        self.take_screenshot('bluetooth-disabled')
        bluetooth_page.refresh_root_element(
        )  # frame is switched, need to refresh the root
        bluetooth_page.enable_bluetooth()
        self.take_screenshot('bluetooth-enabled')
        bluetooth_page.refresh_root_element()
        bluetooth_page.tap_rename_my_device()
        self.take_screenshot('bluetooth-renameDevice')
        bluetooth_page.refresh_root_element()
        bluetooth_page.tap_update_device_name_ok()
        bluetooth_page.disable_bluetooth()
        settings.return_to_prev_menu(settings.screen_element,
                                     bluetooth_page.screen_element)

        ##################### Internet sharing and its subpages ######################
        internet_settings_page = settings.open_internet_sharing()
        self.take_screenshot('internet_sharing')
        internet_settings_page.enable_hotspot()
        self.take_screenshot('internet_sharing-hotspot_enabled')
        hotspot_page = internet_settings_page.tap_hotspot_settings()
        self.take_screenshot('internet_sharing-hotspot')
        hotspot_page.tap_security_settings()
        self.take_screenshot('internet_sharing-hotspot-security',
                             top_frame=True)
        hotspot_page.confirm_security_settings()
        settings.return_to_prev_menu(internet_settings_page.screen_element,
                                     hotspot_page.screen_element)
        settings.return_to_prev_menu(settings.screen_element,
                                     internet_settings_page.screen_element)