1b89977a4SRahul Maheshwari#!/usr/bin/python 2b89977a4SRahul Maheshwari 3b89977a4SRahul Maheshwarir""" 4b89977a4SRahul MaheshwariContains xpaths and related string constants applicable to all openBMC GUI 5b89977a4SRahul Maheshwarimenus. 6b89977a4SRahul Maheshwari""" 7b89977a4SRahul Maheshwari 8b89977a4SRahul Maheshwari 9b89977a4SRahul Maheshwariclass resource_variables(): 10b89977a4SRahul Maheshwari 11314cd9f9SRahul Maheshwari xpath_textbox_hostname = "//input[@id='host']" 12314cd9f9SRahul Maheshwari xpath_textbox_username = "//input[@id='username']" 13314cd9f9SRahul Maheshwari xpath_textbox_password = "//input[@id='password']" 14b89977a4SRahul Maheshwari xpath_button_login = "//*[@id='login__submit']" 15b2181bf1SAnusha Dathatri xpath_button_logout = '//a[contains(text(), "Log out")]' 16b89977a4SRahul Maheshwari xpath_yes_button = "//button[text()='Yes']" 17b89977a4SRahul Maheshwari xpath_openbmc_url = "http://localhost:8080/#/login" 18b89977a4SRahul Maheshwari xpath_openbmc_ip = "//*[@id='login__form']/input[1]" 19b89977a4SRahul Maheshwari xpath_power_indicator = "//*[@id='power-indicator-bar']" 20b89977a4SRahul Maheshwari xpath_select_button_power_on = "//*[@id='power__power-on']" 21dd3bb604SRahul Maheshwari xpath_cancel_button = "//button[contains(text(),'Cancel')]" 22dd3bb604SRahul Maheshwari xpath_save_setting_button = "//button[contains(text(),'Save settings')]" 23b89977a4SRahul Maheshwari 24b89977a4SRahul Maheshwari xpath_select_button_warm_reboot = \ 25b89977a4SRahul Maheshwari "//*[@id='power__warm-boot']" 26f93a5c41SAnusha Dathatri xpath_operation_warning_message = \ 27f93a5c41SAnusha Dathatri "//*[@class='inline__confirm active']" 28b89977a4SRahul Maheshwari xpath_select_button_warm_reboot_no = \ 29b89977a4SRahul Maheshwari "//*[@id='power-operations']/div[3]" \ 30b89977a4SRahul Maheshwari "/div[3]/confirm/div/div[2]/button[2]" 31b89977a4SRahul Maheshwari text_warm_reboot_warning_message = "warm reboot?" 32b89977a4SRahul Maheshwari xpath_select_button_warm_reboot_yes = \ 33b89977a4SRahul Maheshwari "//*[@id='power-operations']" \ 34b89977a4SRahul Maheshwari "/div[3]/div[3]/confirm/div/div[2]/button[1]" 35b89977a4SRahul Maheshwari 36b89977a4SRahul Maheshwari xpath_select_button_cold_reboot = \ 37b89977a4SRahul Maheshwari "//*[@id='power__cold-boot']" 38b89977a4SRahul Maheshwari xpath_select_button_cold_reboot_no = \ 39b89977a4SRahul Maheshwari "//*[@id='power-operations']/div[3]/div[4]" \ 40b89977a4SRahul Maheshwari "/confirm/div/div[2]/button[2]" 41b89977a4SRahul Maheshwari text_cold_reboot_warning_message = "cold reboot?" 42b89977a4SRahul Maheshwari xpath_select_button_cold_reboot_yes = \ 43b89977a4SRahul Maheshwari "//*[@id='power-operations']" \ 44b89977a4SRahul Maheshwari "/div[3]/div[4]/confirm/div/div[2]/button[2]" 45b89977a4SRahul Maheshwari 46b89977a4SRahul Maheshwari xpath_select_button_orderly_shutdown = \ 47b89977a4SRahul Maheshwari "//*[@id='power__soft-shutdown']" 48b89977a4SRahul Maheshwari xpath_select_button_orderly_shutdown_button_no = \ 49b89977a4SRahul Maheshwari "//*[@id='power-operations']/div[3]/div[5]"\ 50b89977a4SRahul Maheshwari "/confirm/div/div[2]/button[2]" 51b89977a4SRahul Maheshwari text_orderly_shutdown_warning_message = "orderly shutdown?" 52b89977a4SRahul Maheshwari xpath_select_button_orderly_shutdown_yes = \ 53b89977a4SRahul Maheshwari "//*[@id='power-operations']/div[3]/div[5]" \ 54b89977a4SRahul Maheshwari "/confirm/div/div[2]/button[1]" 55b89977a4SRahul Maheshwari 56b89977a4SRahul Maheshwari xpath_select_button_immediate_shutdown = \ 57b89977a4SRahul Maheshwari "//*[@id='power__hard-shutdown']" 58b89977a4SRahul Maheshwari xpath_select_button_immediate_shutdown_no = \ 59b89977a4SRahul Maheshwari "//*[@id='power-operations']/div[3]/div[6]" \ 60b89977a4SRahul Maheshwari "/confirm/div/div[2]/button[2]" 61b89977a4SRahul Maheshwari text_immediate_shutdown_warning_message = "immediate shutdown?" 62b89977a4SRahul Maheshwari xpath_select_button_immediate_shutdown_yes = \ 63b89977a4SRahul Maheshwari "//*[@id='power-operations']/div[3]/div[6]" \ 64b89977a4SRahul Maheshwari "/confirm/div/div[2]/button[1]" 65b89977a4SRahul Maheshwari 66b89977a4SRahul Maheshwari obmc_off_state = "Off" 67b89977a4SRahul Maheshwari obmc_standby_state = "Standby" 68b89977a4SRahul Maheshwari obmc_running_state = "Running" 69b89977a4SRahul Maheshwari 7057a4155fSRahul Maheshwari # xpath for main menu. 7157a4155fSRahul Maheshwari xpath_select_server_control = "//button[contains(@class,'btn-control')]" 72dd3bb604SRahul Maheshwari xpath_select_server_configuration = "//button[contains(@class,'btn-config')]" 7357a4155fSRahul Maheshwari 7457a4155fSRahul Maheshwari # xpath for sub main menu. 7557a4155fSRahul Maheshwari xpath_select_server_power_operations = "//a[@href='#/server-control/power-operations']" 76dd3bb604SRahul Maheshwari xpath_select_snmp_settings = "//a[@href='#/configuration/snmp']" 77*23decff0SRahul Maheshwari xpath_select_manage_power_usage = "//a[@href='#/server-control/power-usage']" 78*23decff0SRahul Maheshwari xpath_select_virtual_media = "//a[@href='#/server-control/virtual-media']" 79*23decff0SRahul Maheshwari xpath_select_sol_console = "//a[@href='#/server-control/remote-console']" 80*23decff0SRahul Maheshwari xpath_select_reboot_bmc = "//a[@href='#/server-control/bmc-reboot']" 81*23decff0SRahul Maheshwari xpath_select_ldap = "//a[@href='#/access-control/ldap']" 82*23decff0SRahul Maheshwari xpath_select_server_health = "//a[@href='#/server-health/event-log']" 8357a4155fSRahul Maheshwari 84b89977a4SRahul Maheshwari # Power operation elements needed for power on. 85b89977a4SRahul Maheshwari header_wrapper = "3" 86b89977a4SRahul Maheshwari header_wrapper_elt = "3" 87b89977a4SRahul Maheshwari 88b89977a4SRahul Maheshwari # Power operation elements needed for power operations confirmation. 89b89977a4SRahul Maheshwari power_operations = "3" 90b89977a4SRahul Maheshwari warm_boot = "3" 91b89977a4SRahul Maheshwari cold_boot = "4" 92b89977a4SRahul Maheshwari shut_down = "5" 93b89977a4SRahul Maheshwari power_off = "6" 94b89977a4SRahul Maheshwari confirm_msg = "2" 95b89977a4SRahul Maheshwari yes = "1" 96b89977a4SRahul Maheshwari No = "2" 97b89977a4SRahul Maheshwari 98b89977a4SRahul Maheshwari # GUI header elements locators. 99b89977a4SRahul Maheshwari xpath_select_server_power = "//a[@href='#/server-control/power-operations']" 100b89977a4SRahul Maheshwari 101b89977a4SRahul Maheshwari # Server health elements locators. 102b89977a4SRahul Maheshwari xpath_server_health_text = \ 103b89977a4SRahul Maheshwari "//*[@id='header__wrapper']/div/div[3]/a[2]/span" 104b89977a4SRahul Maheshwari xpath_select_refresh_button = \ 1052513ae5bSAnusha Dathatri "//*[contains(text(),'Refresh')]" 106dadb75e5SAnusha Dathatri xpath_event_severity_all = "//*[text()='Filter by severity']/following-sibling::button[1]" 107dadb75e5SAnusha Dathatri xpath_event_severity_high = "//*[text()='Filter by severity']/following-sibling::button[2]" 108dadb75e5SAnusha Dathatri xpath_event_severity_medium = "//*[text()='Filter by severity']/following-sibling::button[3]" 109dadb75e5SAnusha Dathatri xpath_event_severity_low = "//*[text()='Filter by severity']/following-sibling::button[4]" 110b89977a4SRahul Maheshwari xpath_drop_down_timezone_edt = \ 111b89977a4SRahul Maheshwari "//*[@id='event-log']/section[1]/div/div/button" 112b89977a4SRahul Maheshwari xpath_refresh_circle = "/html/body/main/loader/div[1]/svg/circle" 113b89977a4SRahul Maheshwari xpath_drop_down_timezone_utc = \ 114b89977a4SRahul Maheshwari "//*[@id='event-log']/section[1]/div/div/ul/li[2]/button" 115cae580a6SAnusha Dathatri xpath_event_filter_all = "//*[text()='All events']" 116cae580a6SAnusha Dathatri xpath_event_filter_resolved = "//*[text()='Resolved events']" 117cae580a6SAnusha Dathatri xpath_event_filter_unresolved = "//*[text()='Unresolved events']" 118b89977a4SRahul Maheshwari xpath_event_action_bars = \ 119b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[1]/label/span" 120b89977a4SRahul Maheshwari xpath_event_action_delete = \ 121b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[2]/div[2]/button[1]" 122b89977a4SRahul Maheshwari xpath_event_action_export = \ 123b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[2]/div[2]/a" 124b89977a4SRahul Maheshwari xpath_number_of_events = \ 125b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[2]/p[2]/span" 126b89977a4SRahul Maheshwari xpath_mark_as_resolved = \ 127b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[2]/div[2]/button[2]" 128b89977a4SRahul Maheshwari xpath_events_export = "//*[@id='event__actions-bar']/div[2]/div[2]/a" 129b89977a4SRahul Maheshwari xpath_event_delete_no = \ 130b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[2]/div[1]/div[2]/button[2]" 131b89977a4SRahul Maheshwari xpath_event_delete_yes = \ 132b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[2]/div[1]/div[2]/button[1]" 133cae580a6SAnusha Dathatri xpath_individual_event_select = "(//*[@class='control__indicator'])[2]" 134b89977a4SRahul Maheshwari xpath_individual_event_delete = \ 135b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[2]/div[2]/button[1]" 136cae580a6SAnusha Dathatri xpath_second_event_select = "(//*[@class='control__indicator'])[3]" 137b89977a4SRahul Maheshwari xpath_individual_event_resolved = \ 138b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[2]/div[2]/button[2]" 139b89977a4SRahul Maheshwari xpath_individual_event_export = \ 140b89977a4SRahul Maheshwari "//*[@id='event__actions-bar']/div[2]/div[2]/a" 141cae580a6SAnusha Dathatri xpath_select_all_events = "(//*[@class='control__indicator'])[1]" 142