1#!/usr/bin/env python3 2 3r""" 4Contains xpaths and related string constants applicable for new Vue based OpenBMC GUI. 5""" 6 7 8class gui_variables: 9 # Login page 10 xpath_textbox_hostname = "//input[@id='host']" 11 xpath_textbox_username = "//*[@data-test-id='login-input-username']" 12 xpath_textbox_password = "//*[@data-test-id='login-input-password']" 13 xpath_login_button = "//*[@data-test-id='login-button-submit']" 14 xpath_logout_button = "//*[@data-test-id='appHeader-link-logout']" 15 16 # Overview menu 17 xpath_overview_menu = "//*[@data-test-id='nav-item-overview']" 18 19 # GUI header 20 xpath_root_button_menu = "//*[@data-test-id='appHeader-container-user']" 21 xpath_profile_settings = "//*[@data-test-id='appHeader-link-profile']" 22 xpath_server_health_header = ( 23 "//*[@data-test-id='appHeader-container-health']" 24 ) 25 xpath_server_power_header = ( 26 "//*[@data-test-id='appHeader-container-power']" 27 ) 28 xpath_refresh_button = "//*[@data-test-id='appHeader-button-refresh']" 29 30 # Logs menu 31 xpath_logs_menu = "//*[@data-test-id='nav-button-logs']" 32 xpath_dumps_sub_menu = "//*[@data-test-id='nav-item-dumps']" 33 xpath_dumps_header = "//h1[text()='Dumps']" 34 xpath_event_logs_sub_menu = "//*[@data-test-id='nav-item-event-logs']" 35 xpath_event_logs_heading = "//h1[contains(text(), 'Event logs')]" 36 xpath_progress_logs_sub_menu = ( 37 "//*[@data-test-id='nav-item-post-code-logs']" 38 ) 39 40 # Hardware status menu 41 xpath_hardware_status_menu = ( 42 "//*[@data-test-id='nav-button-hardware-status']" 43 ) 44 xpath_inventory_and_leds_sub_menu = ( 45 "//*[@data-test-id='nav-item-inventory']" 46 ) 47 xpath_sensor_sub_menu = "//*[@data-test-id='nav-item-sensors']" 48 xpath_inventory_and_leds_heading = ( 49 "//h1[contains(text(), 'Inventory and LEDs')]" 50 ) 51 52 # Operations menu 53 xpath_operations_menu = "//*[@data-test-id='nav-button-operations']" 54 xpath_factory_reset_sub_menu = ( 55 "//*[@data-test-id='nav-item-factory-reset']" 56 ) 57 xpath_firmware_update_sub_menu = "//*[@data-test-id='nav-item-firmware']" 58 xpath_reboot_bmc_sub_menu = "//*[@data-test-id='nav-item-reboot-bmc']" 59 xpath_host_console_sub_menu = "//*[@data-test-id='nav-item-host-console']" 60 xpath_server_power_operations_sub_menu = ( 61 "//*[@data-test-id='nav-item-server-power-operations']" 62 ) 63 xpath_host_console_heading = "//h1[text()='Host console']" 64 xpath_firmware_heading = "//h1[contains(text(), 'Firmware')]" 65 66 # Settings menu 67 xpath_settings_menu = "//*[@data-test-id='nav-button-settings']" 68 xpath_network_heading = "//h1[text()='Network']" 69 xpath_date_time_sub_menu = "//*[@data-test-id='nav-item-date-time']" 70 xpath_network_sub_menu = "//*[@data-test-id='nav-item-network']" 71 xpath_power_restore_policy_sub_menu = ( 72 "//*[@data-test-id='nav-item-power-restore-policy']" 73 ) 74 xpath_static_dns = "//h2[text()='Static DNS']" 75 xpath_dns_servers_toggle = ( 76 "//*[@data-test-id='networkSettings-switch-useDns']" 77 ) 78 xpath_add_dns_ip_address_button = ( 79 "//button[contains(text(),'Add IP address')]" 80 ) 81 xpath_input_static_dns = "//*[@id='staticDns']" 82 83 # Security and access menu 84 xpath_secuity_and_accesss_menu = ( 85 "//*[@data-test-id='nav-button-security-and-access']" 86 ) 87 xpath_sessions_sub_menu = "//*[@data-test-id='nav-item-sessions']" 88 xpath_ldap_sub_menu = "//*[@data-test-id='nav-item-ldap']" 89 xpath_user_management_sub_menu = ( 90 "//*[@data-test-id='nav-item-user-management']" 91 ) 92 xpath_policies_sub_menu = "//*[@data-test-id='nav-item-policies']" 93 xpath_certificates_sub_menu = "//*[@data-test-id='nav-item-certificates']" 94 95 # Resource management menu 96 xpath_resource_management_menu = ( 97 "//*[@data-test-id='nav-button-resource-management']" 98 ) 99 xpath_power_sub_menu = "//*[@data-test-id='nav-item-power']" 100 xpath_power_heading = "//h1[contains(text(), 'Power')]" 101 102 # Profile settings 103 xpath_default_UTC = "//*[@data-test-id='profileSettings-radio-defaultUTC']" 104 xpath_profile_save_button = ( 105 "//*[@data-test-id='profileSettings-button-saveSettings']" 106 ) 107 xpath_profile_settings_link = "//a[contains(text(),'Profile Settings')]" 108 xpath_profile_settings_heading = "//h1[text()='Profile settings']" 109 xpath_browser_offset = ( 110 "//*[@data-test-id='profileSettings-radio-browserOffset']" 111 ) 112 xpath_browser_offset_textfield = ( 113 xpath_browser_offset + "/following-sibling::*" 114 ) 115 xpath_input_password = ( 116 "//*[@data-test-id='profileSettings-input-newPassword']" 117 ) 118 xpath_input_confirm_password = ( 119 "//*[@data-test-id='profileSettings-input-confirmPassword']" 120 ) 121 122 # Common variables 123 xpath_save_settings_button = "//button[contains(text(),'Save')]" 124 xpath_confirm_button = "//button[contains(text(),'Confirm')]" 125 xpath_cancel_button = "//button[contains(text(),'Cancel')]" 126 xpath_add_button = "//button[normalize-space(text())='Add']" 127 xpath_page_loading_progress_bar = ( 128 "//*[@aria-label='Page loading progress bar']" 129 ) 130 131 # Reboot sub menu 132 xpath_reboot_bmc_heading = "//h1[text()='Reboot BMC']" 133 xpath_reboot_bmc_button = "//button[contains(text(),'Reboot BMC')]" 134 xpath_confirm_bmc_reboot = "//*[@class='btn btn-primary']" 135