George Keishing | e7e9171 | 2021-09-03 11:28:44 -0500 | [diff] [blame] | 1 | #!/usr/bin/env python3 |
Sathyajith M S | 4f26ae7 | 2018-01-16 04:45:05 -0600 | [diff] [blame] | 2 | |
| 3 | r""" |
| 4 | Contains xpaths and related string constants applicable to all openBMC GUI |
| 5 | menus. |
| 6 | """ |
| 7 | |
| 8 | |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 9 | class resource_variables: |
Rahul Maheshwari | 314cd9f | 2019-04-02 01:13:39 -0500 | [diff] [blame] | 10 | xpath_textbox_hostname = "//input[@id='host']" |
| 11 | xpath_textbox_username = "//input[@id='username']" |
| 12 | xpath_textbox_password = "//input[@id='password']" |
Anves Kumar rayankula | 9233ce1 | 2020-06-17 00:14:41 -0500 | [diff] [blame] | 13 | xpath_input_password = "//input[@id='password']" |
| 14 | xpath_input_confirm_password = "//input[@id='passwordConfirm']" |
| 15 | xpath_submit_button = '//button[@type="submit"]' |
| 16 | xpath_button_profile_settings = '//a[@href="#/profile-settings"]' |
Sathyajith M S | 4f26ae7 | 2018-01-16 04:45:05 -0600 | [diff] [blame] | 17 | xpath_button_login = "//*[@id='login__submit']" |
Rahul Maheshwari | 31b3c43 | 2020-06-26 05:24:13 -0500 | [diff] [blame] | 18 | xpath_button_user_action = "//button[@id='user-actions']" |
| 19 | xpath_button_logout = '//button[text()="Log out"]' |
Rahul Maheshwari | 65f6944 | 2018-11-27 04:43:00 -0600 | [diff] [blame] | 20 | xpath_yes_button = "//button[text()='Yes']" |
Rahul Maheshwari | 8b5b5a4 | 2018-11-30 01:41:35 -0600 | [diff] [blame] | 21 | xpath_power_indicator = "//*[@id='power-indicator-bar']" |
Sathyajith M S | 4f26ae7 | 2018-01-16 04:45:05 -0600 | [diff] [blame] | 22 | xpath_select_button_power_on = "//*[@id='power__power-on']" |
Rahul Maheshwari | dd3bb60 | 2019-10-23 13:31:33 -0500 | [diff] [blame] | 23 | xpath_cancel_button = "//button[contains(text(),'Cancel')]" |
| 24 | xpath_save_setting_button = "//button[contains(text(),'Save settings')]" |
Anusha Dathatri | bb20cb0 | 2019-11-13 10:32:27 -0600 | [diff] [blame] | 25 | xpath_save_button = "//button[contains(text(),'Save')]" |
Anusha Dathatri | e9650a6 | 2019-11-15 04:02:24 -0600 | [diff] [blame] | 26 | xpath_remove_button = "//button[contains(text(),'Remove')]" |
| 27 | xpath_add_button = "//button[@type='submit']" |
Sathyajith M S | 4f26ae7 | 2018-01-16 04:45:05 -0600 | [diff] [blame] | 28 | |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 29 | xpath_select_button_warm_reboot = "//*[@id='power__warm-boot']" |
| 30 | xpath_operation_warning_message = "//*[@class='inline__confirm active']" |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 31 | text_warm_reboot_warning_message = "warm reboot?" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 32 | xpath_select_button_warm_reboot_yes = ( |
| 33 | "//*[@id='power-operations']" |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 34 | "/div[3]/div[3]/confirm/div/div[2]/button[1]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 35 | ) |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 36 | |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 37 | xpath_select_button_cold_reboot = "//*[@id='power__cold-boot']" |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 38 | text_cold_reboot_warning_message = "cold reboot?" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 39 | xpath_select_button_cold_reboot_yes = ( |
| 40 | "//*[@id='power-operations']" |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 41 | "/div[3]/div[4]/confirm/div/div[2]/button[2]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 42 | ) |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 43 | |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 44 | xpath_select_button_orderly_shutdown = "//*[@id='power__soft-shutdown']" |
| 45 | xpath_select_button_orderly_shutdown_button_no = ( |
| 46 | "//*[@id='power-operations']/div[3]/div[5]" |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 47 | "/confirm/div/div[2]/button[2]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 48 | ) |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 49 | text_orderly_shutdown_warning_message = "orderly shutdown?" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 50 | xpath_select_button_orderly_shutdown_yes = ( |
| 51 | "//*[@id='power-operations']/div[3]/div[5]" |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 52 | "/confirm/div/div[2]/button[1]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 53 | ) |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 54 | |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 55 | xpath_select_button_immediate_shutdown = "//*[@id='power__hard-shutdown']" |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 56 | text_immediate_shutdown_warning_message = "immediate shutdown?" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 57 | xpath_select_button_immediate_shutdown_yes = ( |
| 58 | "//*[@id='power-operations']/div[3]/div[6]" |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 59 | "/confirm/div/div[2]/button[1]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 60 | ) |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 61 | |
Sathyajith M S | 4f26ae7 | 2018-01-16 04:45:05 -0600 | [diff] [blame] | 62 | obmc_off_state = "Off" |
Sathyajith M S | f52d6fc | 2018-01-24 10:11:18 -0600 | [diff] [blame] | 63 | obmc_standby_state = "Standby" |
Sathyajith M S | 4f26ae7 | 2018-01-16 04:45:05 -0600 | [diff] [blame] | 64 | obmc_running_state = "Running" |
Sivas SRR | ffa4269 | 2018-01-17 05:17:35 -0600 | [diff] [blame] | 65 | |
Rahul Maheshwari | 57a4155 | 2019-10-22 01:02:23 -0500 | [diff] [blame] | 66 | # xpath for main menu. |
| 67 | xpath_select_server_control = "//button[contains(@class,'btn-control')]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 68 | xpath_select_server_configuration = ( |
| 69 | "//button[contains(@class,'btn-config')]" |
| 70 | ) |
| 71 | xpath_select_access_control = ( |
| 72 | "//button[contains(@class,'btn-access-control')]" |
| 73 | ) |
Rahul Maheshwari | 57a4155 | 2019-10-22 01:02:23 -0500 | [diff] [blame] | 74 | |
| 75 | # xpath for sub main menu. |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 76 | xpath_select_server_power_operations = ( |
| 77 | "//a[@href='#/server-control/power-operations']" |
| 78 | ) |
Rahul Maheshwari | dd3bb60 | 2019-10-23 13:31:33 -0500 | [diff] [blame] | 79 | xpath_select_snmp_settings = "//a[@href='#/configuration/snmp']" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 80 | xpath_select_manage_power_usage = ( |
| 81 | "//a[@href='#/server-control/power-usage']" |
| 82 | ) |
Rahul Maheshwari | 23decff | 2019-10-29 00:55:53 -0500 | [diff] [blame] | 83 | xpath_select_virtual_media = "//a[@href='#/server-control/virtual-media']" |
| 84 | xpath_select_sol_console = "//a[@href='#/server-control/remote-console']" |
| 85 | xpath_select_reboot_bmc = "//a[@href='#/server-control/bmc-reboot']" |
| 86 | xpath_select_ldap = "//a[@href='#/access-control/ldap']" |
| 87 | xpath_select_server_health = "//a[@href='#/server-health/event-log']" |
Anusha Dathatri | f0821d4 | 2019-10-29 21:07:00 -0500 | [diff] [blame] | 88 | xpath_select_server_led = "//a[@href='#/server-control/server-led']" |
Anusha Dathatri | c8ca768 | 2019-10-30 01:38:31 -0500 | [diff] [blame] | 89 | xpath_select_date_time_settings = "//a[@href='#/configuration/date-time']" |
Anusha Dathatri | dc74fdc | 2019-11-13 01:19:43 -0600 | [diff] [blame] | 90 | xpath_select_local_users = "//a[@href='#/access-control/local-users']" |
Rahul Maheshwari | 57a4155 | 2019-10-22 01:02:23 -0500 | [diff] [blame] | 91 | |
Rahul Maheshwari | dbbf179 | 2018-10-31 05:36:29 -0500 | [diff] [blame] | 92 | # GUI header elements locators. |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 93 | xpath_select_server_power = ( |
| 94 | "//a[@href='#/server-control/power-operations']" |
| 95 | ) |
Rahul Maheshwari | dbbf179 | 2018-10-31 05:36:29 -0500 | [diff] [blame] | 96 | |
Sivas SRR | 008dcc6 | 2018-02-27 06:34:56 -0600 | [diff] [blame] | 97 | # Server health elements locators. |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 98 | xpath_select_refresh_button = "//*[contains(text(),'Refresh')]" |
| 99 | xpath_event_severity_all = ( |
| 100 | "//*[text()='Filter by severity']/following-sibling::button[1]" |
| 101 | ) |
| 102 | xpath_event_severity_high = ( |
| 103 | "//*[text()='Filter by severity']/following-sibling::button[2]" |
| 104 | ) |
| 105 | xpath_event_severity_medium = ( |
| 106 | "//*[text()='Filter by severity']/following-sibling::button[3]" |
| 107 | ) |
| 108 | xpath_event_severity_low = ( |
| 109 | "//*[text()='Filter by severity']/following-sibling::button[4]" |
| 110 | ) |
| 111 | xpath_drop_down_timezone_edt = ( |
Sivas SRR | 008dcc6 | 2018-02-27 06:34:56 -0600 | [diff] [blame] | 112 | "//*[@id='event-log']/section[1]/div/div/button" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 113 | ) |
Sivas SRR | 008dcc6 | 2018-02-27 06:34:56 -0600 | [diff] [blame] | 114 | xpath_refresh_circle = "/html/body/main/loader/div[1]/svg/circle" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 115 | xpath_drop_down_timezone_utc = ( |
Sivas SRR | 008dcc6 | 2018-02-27 06:34:56 -0600 | [diff] [blame] | 116 | "//*[@id='event-log']/section[1]/div/div/ul/li[2]/button" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 117 | ) |
Anusha Dathatri | cae580a | 2019-10-16 06:17:19 -0500 | [diff] [blame] | 118 | xpath_event_filter_all = "//*[text()='All events']" |
| 119 | xpath_event_filter_resolved = "//*[text()='Resolved events']" |
| 120 | xpath_event_filter_unresolved = "//*[text()='Unresolved events']" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 121 | xpath_event_action_bars = "//*[@id='event__actions-bar']/div[1]/label/span" |
| 122 | xpath_event_action_delete = ( |
Sivas SRR | 3e1a83b | 2018-03-12 07:52:07 -0500 | [diff] [blame] | 123 | "//*[@id='event__actions-bar']/div[2]/div[2]/button[1]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 124 | ) |
| 125 | xpath_event_action_export = "//*[@id='event__actions-bar']/div[2]/div[2]/a" |
| 126 | xpath_number_of_events = "//*[@id='event__actions-bar']/div[2]/p[2]/span" |
| 127 | xpath_mark_as_resolved = ( |
Sivas SRR | be02691 | 2018-03-14 11:33:02 -0500 | [diff] [blame] | 128 | "//*[@id='event__actions-bar']/div[2]/div[2]/button[2]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 129 | ) |
Sivas SRR | be02691 | 2018-03-14 11:33:02 -0500 | [diff] [blame] | 130 | xpath_events_export = "//*[@id='event__actions-bar']/div[2]/div[2]/a" |
Anusha Dathatri | cae580a | 2019-10-16 06:17:19 -0500 | [diff] [blame] | 131 | xpath_individual_event_select = "(//*[@class='control__indicator'])[2]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 132 | xpath_individual_event_delete = ( |
Sivas SRR | 2631b63 | 2018-04-04 11:33:21 -0500 | [diff] [blame] | 133 | "//*[@id='event__actions-bar']/div[2]/div[2]/button[1]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 134 | ) |
Anusha Dathatri | cae580a | 2019-10-16 06:17:19 -0500 | [diff] [blame] | 135 | xpath_second_event_select = "(//*[@class='control__indicator'])[3]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 136 | xpath_individual_event_resolved = ( |
Sivas SRR | 2631b63 | 2018-04-04 11:33:21 -0500 | [diff] [blame] | 137 | "//*[@id='event__actions-bar']/div[2]/div[2]/button[2]" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 138 | ) |
| 139 | xpath_individual_event_export = ( |
Sivas SRR | 1a94d00 | 2018-04-06 08:48:58 -0500 | [diff] [blame] | 140 | "//*[@id='event__actions-bar']/div[2]/div[2]/a" |
Patrick Williams | 20f3871 | 2022-12-08 06:18:26 -0600 | [diff] [blame] | 141 | ) |
Anusha Dathatri | cae580a | 2019-10-16 06:17:19 -0500 | [diff] [blame] | 142 | xpath_select_all_events = "(//*[@class='control__indicator'])[1]" |