blob: dd92460714eb0b207f1d94b865384a9aef7835c4 [file] [log] [blame]
George Keishinge7e91712021-09-03 11:28:44 -05001#!/usr/bin/env python3
Rahul Maheshwari41747da2020-11-17 09:09:52 -06002
3r"""
4Contains xpaths and related string constants applicable for new Vue based OpenBMC GUI.
5"""
6
7
Patrick Williams20f38712022-12-08 06:18:26 -06008class gui_variables:
George Keishing5f1525a2023-02-09 23:23:31 -06009 r"""
10 Base class for GUI related XPATH variables.
11 """
12
Rahul Maheshwari41747da2020-11-17 09:09:52 -060013 # Login page
rramyasr-ind1ae7fa2023-02-20 11:00:41 -060014 xpath_login_hostname_input = "//input[@id='host']"
15 xpath_login_username_input = "//*[@data-test-id='login-input-username']"
16 xpath_login_password_input = "//*[@data-test-id='login-input-password']"
Rahul Maheshwarie5d9c312021-01-31 23:56:20 -060017 xpath_login_button = "//*[@data-test-id='login-button-submit']"
Rahul Maheshwari41747da2020-11-17 09:09:52 -060018 xpath_logout_button = "//*[@data-test-id='appHeader-link-logout']"
19
20 # Overview menu
21 xpath_overview_menu = "//*[@data-test-id='nav-item-overview']"
22
23 # GUI header
Rahul Maheshwarie5d9c312021-01-31 23:56:20 -060024 xpath_root_button_menu = "//*[@data-test-id='appHeader-container-user']"
Rahul Maheshwari41747da2020-11-17 09:09:52 -060025 xpath_profile_settings = "//*[@data-test-id='appHeader-link-profile']"
Patrick Williams20f38712022-12-08 06:18:26 -060026 xpath_server_health_header = (
27 "//*[@data-test-id='appHeader-container-health']"
28 )
29 xpath_server_power_header = (
30 "//*[@data-test-id='appHeader-container-power']"
31 )
Rahul Maheshwari41747da2020-11-17 09:09:52 -060032 xpath_refresh_button = "//*[@data-test-id='appHeader-button-refresh']"
Rahul Maheshwari41747da2020-11-17 09:09:52 -060033
Rahul Maheshwari142642d2021-08-24 00:00:15 -050034 # Logs menu
35 xpath_logs_menu = "//*[@data-test-id='nav-button-logs']"
Rahul Maheshwaribce8f712021-06-01 06:26:48 -050036 xpath_dumps_sub_menu = "//*[@data-test-id='nav-item-dumps']"
rramyasr-in305d23a2022-01-19 01:32:04 -060037 xpath_dumps_header = "//h1[text()='Dumps']"
Rahul Maheshwari41747da2020-11-17 09:09:52 -060038 xpath_event_logs_sub_menu = "//*[@data-test-id='nav-item-event-logs']"
rramyasr-ind3b3fcd2022-11-18 10:41:14 -060039 xpath_event_logs_heading = "//h1[contains(text(), 'Event logs')]"
Patrick Williams20f38712022-12-08 06:18:26 -060040 xpath_progress_logs_sub_menu = (
41 "//*[@data-test-id='nav-item-post-code-logs']"
42 )
Rahul Maheshwari41747da2020-11-17 09:09:52 -060043
Rahul Maheshwari142642d2021-08-24 00:00:15 -050044 # Hardware status menu
Patrick Williams20f38712022-12-08 06:18:26 -060045 xpath_hardware_status_menu = (
46 "//*[@data-test-id='nav-button-hardware-status']"
47 )
48 xpath_inventory_and_leds_sub_menu = (
49 "//*[@data-test-id='nav-item-inventory']"
50 )
Rahul Maheshwari142642d2021-08-24 00:00:15 -050051 xpath_sensor_sub_menu = "//*[@data-test-id='nav-item-sensors']"
Patrick Williams20f38712022-12-08 06:18:26 -060052 xpath_inventory_and_leds_heading = (
53 "//h1[contains(text(), 'Inventory and LEDs')]"
54 )
Rahul Maheshwari142642d2021-08-24 00:00:15 -050055
56 # Operations menu
57 xpath_operations_menu = "//*[@data-test-id='nav-button-operations']"
Patrick Williams20f38712022-12-08 06:18:26 -060058 xpath_factory_reset_sub_menu = (
59 "//*[@data-test-id='nav-item-factory-reset']"
60 )
Rahul Maheshwari142642d2021-08-24 00:00:15 -050061 xpath_firmware_update_sub_menu = "//*[@data-test-id='nav-item-firmware']"
Rahul Maheshwari41747da2020-11-17 09:09:52 -060062 xpath_reboot_bmc_sub_menu = "//*[@data-test-id='nav-item-reboot-bmc']"
rramyasr-inc7487402022-06-28 12:23:50 -050063 xpath_host_console_sub_menu = "//*[@data-test-id='nav-item-host-console']"
Patrick Williams20f38712022-12-08 06:18:26 -060064 xpath_server_power_operations_sub_menu = (
65 "//*[@data-test-id='nav-item-server-power-operations']"
66 )
rramyasr-in70178952022-06-17 06:17:30 -050067 xpath_host_console_heading = "//h1[text()='Host console']"
rramyasr-ind3b3fcd2022-11-18 10:41:14 -060068 xpath_firmware_heading = "//h1[contains(text(), 'Firmware')]"
Rahul Maheshwari142642d2021-08-24 00:00:15 -050069
70 # Settings menu
71 xpath_settings_menu = "//*[@data-test-id='nav-button-settings']"
rramyasr-ind3b3fcd2022-11-18 10:41:14 -060072 xpath_network_heading = "//h1[text()='Network']"
Rahul Maheshwari142642d2021-08-24 00:00:15 -050073 xpath_date_time_sub_menu = "//*[@data-test-id='nav-item-date-time']"
74 xpath_network_sub_menu = "//*[@data-test-id='nav-item-network']"
Patrick Williams20f38712022-12-08 06:18:26 -060075 xpath_power_restore_policy_sub_menu = (
76 "//*[@data-test-id='nav-item-power-restore-policy']"
77 )
Megha G N2a31e512023-01-18 04:23:20 -060078 xpath_static_dns = "//h2[text()='Static DNS']"
79 xpath_dns_servers_toggle = (
80 "//*[@data-test-id='networkSettings-switch-useDns']"
81 )
82 xpath_add_dns_ip_address_button = (
83 "//button[contains(text(),'Add IP address')]"
84 )
85 xpath_input_static_dns = "//*[@id='staticDns']"
Rahul Maheshwari41747da2020-11-17 09:09:52 -060086
Rahul Maheshwari142642d2021-08-24 00:00:15 -050087 # Security and access menu
Patrick Williams20f38712022-12-08 06:18:26 -060088 xpath_secuity_and_accesss_menu = (
89 "//*[@data-test-id='nav-button-security-and-access']"
90 )
Rahul Maheshwari142642d2021-08-24 00:00:15 -050091 xpath_sessions_sub_menu = "//*[@data-test-id='nav-item-sessions']"
Rahul Maheshwari41747da2020-11-17 09:09:52 -060092 xpath_ldap_sub_menu = "//*[@data-test-id='nav-item-ldap']"
Patrick Williams20f38712022-12-08 06:18:26 -060093 xpath_user_management_sub_menu = (
94 "//*[@data-test-id='nav-item-user-management']"
95 )
Rahul Maheshwari142642d2021-08-24 00:00:15 -050096 xpath_policies_sub_menu = "//*[@data-test-id='nav-item-policies']"
97 xpath_certificates_sub_menu = "//*[@data-test-id='nav-item-certificates']"
98
99 # Resource management menu
Patrick Williams20f38712022-12-08 06:18:26 -0600100 xpath_resource_management_menu = (
101 "//*[@data-test-id='nav-button-resource-management']"
102 )
Rahul Maheshwari142642d2021-08-24 00:00:15 -0500103 xpath_power_sub_menu = "//*[@data-test-id='nav-item-power']"
rramyasr-ind3b3fcd2022-11-18 10:41:14 -0600104 xpath_power_heading = "//h1[contains(text(), 'Power')]"
Nandish-Mattib8b82c52023-02-28 05:42:05 -0600105 xpath_success_message = "//*[contains(text(),'Success')]"
Anusha Dathatri54edcbc2020-12-10 04:04:08 -0600106
107 # Profile settings
108 xpath_default_UTC = "//*[@data-test-id='profileSettings-radio-defaultUTC']"
Patrick Williams20f38712022-12-08 06:18:26 -0600109 xpath_profile_save_button = (
110 "//*[@data-test-id='profileSettings-button-saveSettings']"
111 )
sarandev34d1a7372023-01-27 02:10:38 -0600112 xpath_profile_settings_link = "//a[contains(text(),'Profile Settings')]"
sarandev3ff7f34b2023-01-16 05:09:20 -0600113 xpath_profile_settings_heading = "//h1[text()='Profile settings']"
114 xpath_browser_offset = (
115 "//*[@data-test-id='profileSettings-radio-browserOffset']"
116 )
sarandev34d1a7372023-01-27 02:10:38 -0600117 xpath_browser_offset_textfield = (
118 xpath_browser_offset + "/following-sibling::*"
119 )
Patrick Williams20f38712022-12-08 06:18:26 -0600120 xpath_input_password = (
121 "//*[@data-test-id='profileSettings-input-newPassword']"
122 )
123 xpath_input_confirm_password = (
124 "//*[@data-test-id='profileSettings-input-confirmPassword']"
125 )
Rahul Maheshwari142642d2021-08-24 00:00:15 -0500126
127 # Common variables
rramyasr-in2da4d6f2022-11-07 04:31:24 -0600128 xpath_save_settings_button = "//button[contains(text(),'Save')]"
Ashwini Chandrappa233d9652021-08-04 09:56:30 -0500129 xpath_confirm_button = "//button[contains(text(),'Confirm')]"
meghagn2052fdd2021-12-07 02:42:31 -0600130 xpath_cancel_button = "//button[contains(text(),'Cancel')]"
meghagn97f7eb42022-03-02 02:59:35 -0600131 xpath_add_button = "//button[normalize-space(text())='Add']"
Patrick Williams20f38712022-12-08 06:18:26 -0600132 xpath_page_loading_progress_bar = (
133 "//*[@aria-label='Page loading progress bar']"
134 )
rramyasr-in2da4d6f2022-11-07 04:31:24 -0600135
rramyasr-in732cc3f2022-11-16 05:30:57 -0600136 # Reboot sub menu
meghagn2052fdd2021-12-07 02:42:31 -0600137 xpath_reboot_bmc_heading = "//h1[text()='Reboot BMC']"
138 xpath_reboot_bmc_button = "//button[contains(text(),'Reboot BMC')]"
139 xpath_confirm_bmc_reboot = "//*[@class='btn btn-primary']"