1*** Settings *** 2 3Documentation Test OpenBMC GUI "Server power operations" sub-menu of "Operations". 4 5Resource ../../lib/gui_resource.robot 6Resource ../../../lib/state_manager.robot 7 8Test Setup Run Keywords Launch Browser And Login GUI AND Navigate to Server Power Operation Page 9Test Teardown Close Browser 10 11Force Tags Server_Power_Operations_Sub_Menu 12 13*** Variables *** 14 15${xpath_server_power_heading} //h1[text()="Server power operations"] 16${xpath_enable_onetime_boot_checkbox} //*[contains(@class,'custom-checkbox')] 17${xpath_boot_option_select} //*[@id='boot-option'] 18${xpath_shutdown_button} //*[@data-test-id='serverPowerOperations-button-shutDown'] 19${xpath_reboot_button} //*[@data-test-id='serverPowerOperations-button-reboot'] 20${xpath_poweron_button} //*[@data-test-id='serverPowerOperations-button-powerOn'] 21${xpath_save_button} //button[contains(text(),'Save')] 22${xpath_shutdown_orderly_radio} //*[@data-test-id='serverPowerOperations-radio-shutdownOrderly'] 23${xpath_shutdown_immediate_radio} //*[@data-test-id='serverPowerOperations-radio-shutdownImmediate'] 24${xpath_confirm_button} //button[contains(text(),'Confirm')] 25${xpath_current_power_state} //*[@data-test-id='powerServerOps-text-hostStatus'] 26${xpath_reboot_immediate_radio} //*[@data-test-id='serverPowerOperations-radio-rebootImmediate'] 27 28 29*** Test Cases *** 30 31Verify Navigation To Server Power Operations Page 32 [Documentation] Verify navigation to server power operations page. 33 [Tags] Verify_Navigation_To_Server_Power_Operations_Page 34 35 Page Should Contain Element ${xpath_server_power_heading} 36 37 38Verify Immediate Shutdown 39 [Documentation] Verify shutdown after clicking immediate shutdown button. 40 [Tags] Verify_Immediate_Shutdown 41 [Setup] Run Keywords Redfish Power On stack_mode=skip AND Launch Browser And Login GUI 42 ... AND Navigate to Server Power Operation Page 43 44 Click Element At Coordinates ${xpath_shutdown_immediate_radio} 0 0 45 Click Element ${xpath_shutdown_button} 46 Wait Until Page Contains Element ${xpath_confirm_button} timeout=10 47 Click Element ${xpath_confirm_button} 48 Wait Until Keyword Succeeds 3 min 15 sec Element Should Contain ${xpath_current_power_state} Off 49 50 51Verify Orderly Shutdown 52 [Documentation] Verify shutdown after clicking orderly shutdown button. 53 [Tags] Verify_Orderly_Shutdown 54 [Setup] Run Keywords Redfish Power On stack_mode=skip AND Launch Browser And Login GUI 55 ... AND Navigate to Server Power Operation Page 56 57 Click Element At Coordinates ${xpath_shutdown_orderly_radio} 0 0 58 Click Element ${xpath_shutdown_button} 59 Wait Until Page Contains Element ${xpath_confirm_button} timeout=10 60 Click Element ${xpath_confirm_button} 61 Wait Until Keyword Succeeds 10 min 15 sec Element Should Contain ${xpath_current_power_state} Off 62 63 64Verify Existence Of All Sections In Server Power Operations Page 65 [Documentation] Verify existence of all sections in Server Power Operations page. 66 [Tags] Verify_Existence_Of_All_Sections_In_Server_Power_Operations_Page 67 68 # Added a delay for the page to load boot settings section. 69 Wait Until Page Contains Server power operations timeout=5 70 Page Should Contain Current status 71 Page Should Contain Operations 72 Page Should Contain Settings 73 74 75Verify Existence Of All Input Boxes In Host Os Boot Settings 76 [Documentation] Verify existence of all input boxes in host os boot settings. 77 [Tags] Verify_Existence_Of_All_Input_Boxes_In_Host_Os_Boot_Settings 78 79 # Added a delay for the page to load boot settings section. 80 Wait Until Page Contains Boot settings timeout=5 81 Page Should Contain Element ${xpath_enable_onetime_boot_checkbox} 82 Page Should Contain Element ${xpath_boot_option_select} 83 84 85Verify System State At Power Off 86 [Documentation] Verify state of the system in power off state. 87 [Tags] Verify_System_State_At_Power_Off 88 89 Redfish Power Off stack_mode=skip 90 Page Should Contain Element ${xpath_current_power_state} 91 Element Should Contain ${xpath_current_power_state} Off 92 93 94Verify System State At Power On 95 [Documentation] Verify state of the system in power on state. 96 [Tags] Verify_System_State_At_Power_On 97 [Setup] Run Keywords Redfish Power On stack_mode=skip AND Launch Browser And Login GUI 98 ... AND Navigate to Server Power Operation Page 99 100 Wait Until Keyword Succeeds 15 sec 5 sec Element Should Contain ${xpath_current_power_state} On 101 102 103Verify PowerOn Button Should Present At Power Off 104 [Documentation] Verify existence of poweron button at power off. 105 [Tags] Verify_PowerOn_Button_Should_Present_At_Power_Off 106 107 Redfish Power Off stack_mode=skip 108 # TODO: Implement power off using GUI later. 109 Page Should Contain Element ${xpath_poweron_button} 110 111 112Verify Shutdown And Reboot Buttons Presence At Power On 113 [Documentation] Verify existence of shutdown and reboot buttons at power on. 114 [Tags] Verify_Shutdown_And_Reboot_Buttons_Presence_At_Power_On 115 [Setup] Run Keywords Redfish Power On stack_mode=skip AND Launch Browser And Login GUI 116 ... AND Navigate to Server Power Operation Page 117 118 # TODO: Implement power on using GUI later. 119 Page Should Contain Element ${xpath_shutdown_button} 120 Page Should Contain Element ${xpath_reboot_button} 121 122 123Verify Host Immediate Reboot 124 [Documentation] Verify host reboot after triggering immediate reboot. 125 [Tags] Verify_Host_Immediate_Reboot 126 [Setup] Run Keywords Redfish Power On stack_mode=skip AND Launch Browser And Login GUI 127 ... AND Navigate to Server Power Operation Page 128 129 Click Element At Coordinates ${xpath_reboot_immediate_radio} 0 0 130 Click Element ${xpath_reboot_button} 131 Wait Until Page Contains Element ${xpath_confirm_button} timeout=10 132 Click Element ${xpath_confirm_button} 133 Wait Until Keyword Succeeds 3 min 2 sec Element Should Contain ${xpath_current_power_state} Off 134 Click Element ${xpath_refresh_button} 135 Wait Until Keyword Succeeds 10 min 15 sec Element Should Contain ${xpath_current_power_state} On 136 137 138Verify Host Orderly Reboot 139 [Documentation] Verify host reboot after triggering orderly reboot. 140 [Tags] Verify_Host_Orderly_Reboot 141 [Setup] Run Keywords Redfish Power On stack_mode=skip AND Launch Browser And Login GUI 142 ... AND Navigate to Server Power Operation Page 143 144 Click Element ${xpath_reboot_button} 145 # Delay for confirm button to appear. 146 Sleep 5s 147 Wait Until Element Is Visible ${xpath_confirm_button} timeout=10 148 Click Element ${xpath_confirm_button} 149 Wait Until Keyword Succeeds 2 min 1 sec Is Server Status Off 150 Click Element ${xpath_refresh_button} 151 Wait Until Keyword Succeeds 10 min 15 sec Element Should Contain ${xpath_current_power_state} On 152 153 154*** Keywords *** 155 156Navigate to Server Power Operation Page 157 [Documentation] Go to server power operation page. 158 159 Click Element ${xpath_operations_menu} 160 Click Element ${xpath_server_power_operations_sub_menu} 161 Wait Until Keyword Succeeds 30 sec 10 sec Location Should Contain server-power-operations 162 Wait Until Element Is Not Visible ${xpath_page_loading_progress_bar} timeout=30 163 164Is Server Status Off 165 [Documentation] Perform GUI refresh and verify server status to Off. 166 167 Refresh GUI 168 Element Should Contain ${xpath_current_power_state} Off 169