#!/usr/bin/env python3 r""" Contains xpaths and related string constants applicable for new Vue based OpenBMC GUI. """ class gui_variables: # Login page xpath_textbox_hostname = "//input[@id='host']" xpath_textbox_username = "//*[@data-test-id='login-input-username']" xpath_textbox_password = "//*[@data-test-id='login-input-password']" xpath_login_button = "//*[@data-test-id='login-button-submit']" xpath_logout_button = "//*[@data-test-id='appHeader-link-logout']" # Overview menu xpath_overview_menu = "//*[@data-test-id='nav-item-overview']" # GUI header xpath_root_button_menu = "//*[@data-test-id='appHeader-container-user']" xpath_profile_settings = "//*[@data-test-id='appHeader-link-profile']" xpath_server_health_header = ( "//*[@data-test-id='appHeader-container-health']" ) xpath_server_power_header = ( "//*[@data-test-id='appHeader-container-power']" ) xpath_refresh_button = "//*[@data-test-id='appHeader-button-refresh']" # Logs menu xpath_logs_menu = "//*[@data-test-id='nav-button-logs']" xpath_dumps_sub_menu = "//*[@data-test-id='nav-item-dumps']" xpath_dumps_header = "//h1[text()='Dumps']" xpath_event_logs_sub_menu = "//*[@data-test-id='nav-item-event-logs']" xpath_event_logs_heading = "//h1[contains(text(), 'Event logs')]" xpath_progress_logs_sub_menu = ( "//*[@data-test-id='nav-item-post-code-logs']" ) # Hardware status menu xpath_hardware_status_menu = ( "//*[@data-test-id='nav-button-hardware-status']" ) xpath_inventory_and_leds_sub_menu = ( "//*[@data-test-id='nav-item-inventory']" ) xpath_sensor_sub_menu = "//*[@data-test-id='nav-item-sensors']" xpath_inventory_and_leds_heading = ( "//h1[contains(text(), 'Inventory and LEDs')]" ) # Operations menu xpath_operations_menu = "//*[@data-test-id='nav-button-operations']" xpath_factory_reset_sub_menu = ( "//*[@data-test-id='nav-item-factory-reset']" ) xpath_firmware_update_sub_menu = "//*[@data-test-id='nav-item-firmware']" xpath_reboot_bmc_sub_menu = "//*[@data-test-id='nav-item-reboot-bmc']" xpath_host_console_sub_menu = "//*[@data-test-id='nav-item-host-console']" xpath_server_power_operations_sub_menu = ( "//*[@data-test-id='nav-item-server-power-operations']" ) xpath_host_console_heading = "//h1[text()='Host console']" xpath_firmware_heading = "//h1[contains(text(), 'Firmware')]" # Settings menu xpath_settings_menu = "//*[@data-test-id='nav-button-settings']" xpath_network_heading = "//h1[text()='Network']" xpath_date_time_sub_menu = "//*[@data-test-id='nav-item-date-time']" xpath_network_sub_menu = "//*[@data-test-id='nav-item-network']" xpath_power_restore_policy_sub_menu = ( "//*[@data-test-id='nav-item-power-restore-policy']" ) # Security and access menu xpath_secuity_and_accesss_menu = ( "//*[@data-test-id='nav-button-security-and-access']" ) xpath_sessions_sub_menu = "//*[@data-test-id='nav-item-sessions']" xpath_ldap_sub_menu = "//*[@data-test-id='nav-item-ldap']" xpath_user_management_sub_menu = ( "//*[@data-test-id='nav-item-user-management']" ) xpath_policies_sub_menu = "//*[@data-test-id='nav-item-policies']" xpath_certificates_sub_menu = "//*[@data-test-id='nav-item-certificates']" # Resource management menu xpath_resource_management_menu = ( "//*[@data-test-id='nav-button-resource-management']" ) xpath_power_sub_menu = "//*[@data-test-id='nav-item-power']" xpath_power_heading = "//h1[contains(text(), 'Power')]" # Profile settings xpath_default_UTC = "//*[@data-test-id='profileSettings-radio-defaultUTC']" xpath_profile_save_button = ( "//*[@data-test-id='profileSettings-button-saveSettings']" ) xpath_profile_settings = "//button[contains(text(),'Profile Settings')]" xpath_profile_settings_heading = "//h1[text()='Profile settings']" xpath_browser_offset = ( "//*[@data-test-id='profileSettings-radio-browserOffset']" ) xpath_ist_text = "//*[contains(text(),'IST UTC+5:30')]" xpath_input_password = ( "//*[@data-test-id='profileSettings-input-newPassword']" ) xpath_input_confirm_password = ( "//*[@data-test-id='profileSettings-input-confirmPassword']" ) # Common variables xpath_save_settings_button = "//button[contains(text(),'Save')]" xpath_confirm_button = "//button[contains(text(),'Confirm')]" xpath_cancel_button = "//button[contains(text(),'Cancel')]" xpath_add_button = "//button[normalize-space(text())='Add']" xpath_page_loading_progress_bar = ( "//*[@aria-label='Page loading progress bar']" ) # Reboot sub menu xpath_reboot_bmc_heading = "//h1[text()='Reboot BMC']" xpath_reboot_bmc_button = "//button[contains(text(),'Reboot BMC')]" xpath_confirm_bmc_reboot = "//*[@class='btn btn-primary']"