Index: suite_leahi/shared/scripts/configuration/config.py =================================================================== diff -u -rfddb8614c64345cc0ad8fe2a98a892529e76924d -r4e2b2a08fb10fb528e782a505eaab19f63874cc4 --- suite_leahi/shared/scripts/configuration/config.py (.../config.py) (revision fddb8614c64345cc0ad8fe2a98a892529e76924d) +++ suite_leahi/shared/scripts/configuration/config.py (.../config.py) (revision 4e2b2a08fb10fb528e782a505eaab19f63874cc4) @@ -18,11 +18,6 @@ EXPORT_LOG_PROGRESS_STATUS = "Service log export to USB in progress ... " SERVICE_SCREEN_TITLE_TEXT = "Service" -# Headerbar_information_popup -INFORMATION_PARAMETERS = [ - "OS Version", "UI Version", "TD Version", "TD FPGA Version", - "TD Serial Number", "DD Version", "DD FPGA Version", "DD Serial Number", -] # Device Settings WiFi WIFI_TEXT = "Wi-Fi" WIFI_PARAMETERS_TEXTS = ["SSID", "IP Address", "Gateway", "Subnet Mask", "DNS"] Index: suite_leahi/shared/scripts/configuration/navigation.py =================================================================== diff -u --- suite_leahi/shared/scripts/configuration/navigation.py (revision 0) +++ suite_leahi/shared/scripts/configuration/navigation.py (revision 4e2b2a08fb10fb528e782a505eaab19f63874cc4) @@ -0,0 +1,35 @@ +import names +import squish +import test +from leahi_dialin.ui.td_messaging import TD_Messaging +from leahi_dialin.common.td_defs import TDOpModes, TDStandbyStates +from configuration import config, utility + +td_simulator = TD_Messaging() + +def navigate_to_device_settings_screen(): + """ + Method to navigate to "Service" screen + """ + td_simulator.td_operation_mode(TDOpModes.MODE_STAN.value, 0) + settings_menu_object = utility.get_object_from_names( + names.o_Settings_Menu, + error_message="Settings menu object missing", + timeout_ms=1000, + ) + if settings_menu_object is not None: + squish.mouseClick(settings_menu_object) + + device_setting_screen_title_text = utility.get_object_from_names( + names.o_DeviceSettingsTitleText, + error_message="Device Settings Screen title text object missing", + timeout_ms=2000, + ) + if device_setting_screen_title_text is not None: + test.compare( + device_setting_screen_title_text.text, + config.DEVICE_SETTINGS_SCREEN_TITLE_TEXT, + "{} screen is displayed and Comparison of Device Settings Screen Title text".format( + config.DEVICE_SETTINGS_SCREEN_TITLE_TEXT + ), + ) \ No newline at end of file Index: suite_leahi/shared/scripts/configuration/utility.py =================================================================== diff -u -re2c906a7b5fde31d48d168f097fe6a5a2ab0afea -r4e2b2a08fb10fb528e782a505eaab19f63874cc4 --- suite_leahi/shared/scripts/configuration/utility.py (.../utility.py) (revision e2c906a7b5fde31d48d168f097fe6a5a2ab0afea) +++ suite_leahi/shared/scripts/configuration/utility.py (.../utility.py) (revision 4e2b2a08fb10fb528e782a505eaab19f63874cc4) @@ -1,5 +1,6 @@ import squish import test +import object def get_object_from_names(names_dict, error_message = "Missing object", timeout_ms = 200): """ @@ -12,3 +13,17 @@ except LookupError: test.fail("ERROR : " + error_message) return None + +def setObjectText(obj, text): + obj["text"] = text + return obj + +def findChildByText(parent_object, target_text): + """Recursively finds a child object by its text property.""" + for child in object.children(parent_object): + if hasattr(child, "text") and str(child.text) == target_text: + return child + found = findChildByText(child, target_text) + if found: + return found + return None \ No newline at end of file Index: suite_leahi/tst_device_settings_wifi/test.py =================================================================== diff -u -rfddb8614c64345cc0ad8fe2a98a892529e76924d -r4e2b2a08fb10fb528e782a505eaab19f63874cc4 --- suite_leahi/tst_device_settings_wifi/test.py (.../test.py) (revision fddb8614c64345cc0ad8fe2a98a892529e76924d) +++ suite_leahi/tst_device_settings_wifi/test.py (.../test.py) (revision 4e2b2a08fb10fb528e782a505eaab19f63874cc4) @@ -13,66 +13,13 @@ import names -from configuration import config, utility -from leahi_dialin.ui.td_messaging import TD_Messaging +from configuration import config, utility, navigation from leahi_dialin.ui import utils -from leahi_dialin.common.td_defs import TDOpModes -td_simulator = TD_Messaging() - - -def text_obj(text): - """ - Method to set custom object property for WiFi screen. - @param text: (string) parameter text - """ - names.o_SettingsBase_Information_Text["text"] = text - return names.o_SettingsBase_Information_Text - - -def navigate_to_device_settings_screen(): - """ - Method to navigate to "Device Settings" screen - """ - td_simulator.td_operation_mode(TDOpModes.MODE_STAN.value, 0) - settings_menu_object = utility.get_object_from_names( - names.o_Settings_Menu, - error_message="Settings menu object missing", - timeout_ms=3000, - ) - if settings_menu_object is not None: - mouseClick(settings_menu_object) - - device_setting_screen_title_text = utility.get_object_from_names( - names.o_DeviceSettingsTitleText, - error_message="Device Settings Screen title text object missing", - timeout_ms=2000, - ) - if device_setting_screen_title_text is not None: - test.compare( - device_setting_screen_title_text.text, - config.DEVICE_SETTINGS_SCREEN_TITLE_TEXT, - "{} screen is displayed and Comparison of Device Settings Screen Title text".format( - config.DEVICE_SETTINGS_SCREEN_TITLE_TEXT - ), - ) - - -def findChildByText(parent_object, target_text): - """Recursively finds a child object by its text property.""" - for child in object.children(parent_object): - if hasattr(child, "text") and str(child.text) == target_text: - return child - found = findChildByText(child, target_text) - if found: - return found - return None - - def navigate_to_wifi_settings_screen(): grid_container = waitForObject(names.o_DeviceSettingsGrid) - wifi_option = findChildByText(grid_container, "Wi-Fi") + wifi_option = utility.findChildByText(grid_container, "Wi-Fi") if wifi_option is not None: mouseClick(wifi_option) @@ -98,7 +45,9 @@ """ test.startSection("Verifying Wi-Fi Setting Parameters") for wifi_parameter in config.WIFI_PARAMETERS_TEXTS: - wifi_parameter_text = waitForObjectExists(text_obj(wifi_parameter)) + wifi_parameter_text = waitForObjectExists( + utility.setObjectText(names.o_SettingsBase_Information_Text, wifi_parameter) + ) test.compare( wifi_parameter_text.text, wifi_parameter, @@ -161,7 +110,7 @@ "Launch Leahi application and Navigate to Device Settings WiFi screen" ) startApplication(config.AUT_NAME + "-q") - navigate_to_device_settings_screen() + navigation.navigate_to_device_settings_screen() navigate_to_wifi_settings_screen() test.endSection() verify_wifi_setting_parameters()