1*** Settings *** 2 3Documentation Test OpenBMC GUI "Overview" menu. 4 5Resource ../../lib/gui_resource.robot 6Resource ../../../lib/logging_utils.robot 7Resource ../../../lib/list_utils.robot 8Resource ../../../lib/bmc_network_utils.robot 9 10Library String 11 12Suite Setup Launch Browser And Login GUI 13Suite Teardown Close Browser 14Test Setup Test Setup Execution 15 16 17*** Variables *** 18 19${xpath_overview_page_header} //h1[contains(text(), "Overview")] 20${xpath_edit_network_settings_button} //*[@data-test-id='overviewQuickLinks-button-networkSettings'] 21${view_all_event_logs} //*[@data-test-id='overviewEvents-button-eventLogs'] 22${xpath_launch_serial_over_lan} //*[@data-test-id='overviewQuickLinks-button-solConsole'] 23${xpath_led_button} //*[@data-test-id='overviewQuickLinks-checkbox-serverLed'] 24 25*** Test Cases *** 26 27Verify Existence Of All Sections In Overview Page 28 [Documentation] Verify existence of all sections in Overview page. 29 [Tags] Verify_Existence_Of_All_Sections_In_Overview_Page 30 31 Page Should Contain BMC information 32 Page Should Contain Server information 33 Page Should Contain Network information 34 Page Should Contain Power consumption 35 Page Should Contain High priority events 36 37 38Verify Network Information In Overview Page 39 [Documentation] Verify values under network information section. 40 [Tags] Verify_Network_Information_In_Overview_Page 41 42 ${hostname}= Get BMC Hostname 43 Page Should Contain ${hostname} 44 45 # Get all IP addresses and prefix lengths on system. 46 47 ${ip_addr_list}= Get BMC IP Info 48 FOR ${ip_address} IN @{ip_addr_list} 49 ${ip}= Fetch From Left ${ip_address} \/ 50 Page Should Contain ${ip} 51 END 52 53 ${macaddr}= Get BMC MAC Address 54 Page Should Contain ${macaddr} 55 56 57Verify Message In High Priority Events Section For No Events 58 [Documentation] Verify message under high priority events section in case of no events. 59 [Tags] Verify_Message_In_High_Priority_Events_Section_For_No_Events 60 61 Redfish Purge Event Log 62 Click Element ${xpath_refresh_button} 63 Wait Until Page Contains no high priority events to display timeout=10 64 65 66Verify Server Information Section 67 [Documentation] Verify values under server information section in overview page. 68 [Tags] Verify_Server_Information_Section 69 70 ${redfish_machine_model}= Redfish.Get Attribute /redfish/v1/Systems/system/ Model 71 Page Should Contain ${redfish_machine_model} 72 73 ${redfish_serial_number}= Redfish.Get Attribute /redfish/v1/Systems/system/ SerialNumber 74 Page Should Contain ${redfish_serial_number} 75 76 ${redfish_motherboard_manufacturer}= Redfish.Get Attribute 77 ... /redfish/v1/Systems/system/ Manufacturer 78 79 Page Should Contain ${redfish_motherboard_manufacturer} 80 81 82Verify BMC Information Section 83 [Documentation] Verify BMC information section in overview page. 84 [Tags] Verify_BMC_Information_Section 85 86 ${firmware_version}= Redfish Get BMC Version 87 Page Should Contain ${firmware_version} 88 89 90Verify Edit Network Setting Button 91 [Documentation] Verify navigation to network setting page after clicking the button in overview page. 92 [Tags] Verify_Edit_Network_Setting_Button 93 94 Click Element ${xpath_edit_network_settings_button} 95 Wait Until Page Contains Element ${xpath_network_page_header} 96 97 98Verify Event Under High Priority Events Section 99 [Documentation] Verify event under high priority events section in case of any event. 100 [Tags] Verify_Event_Under_High_Priority_Events_Section 101 102 Redfish Purge Event Log 103 Click Element ${xpath_refresh_button} 104 Generate Test Error Log 105 Wait Until Page Contains xyz.openbmc_project.Common.Error.InternalFailure timeout=30s 106 107 108Verify View All Event Logs Button 109 [Documentation] Verify view all event log button in overview page. 110 [Tags] Verify_View_All_Event_Logs_Button 111 112 Generate Test Error Log 113 Page Should Contain Element ${view_all_event_logs} timeout=30 114 Click Element ${view_all_event_logs} 115 Wait Until Page Contains Element ${xpath_event_header} timeout=30 116 117 118Verify Serial Over LAN Console Button In Overview Page 119 [Documentation] Click serial over LAN button and verify page navigation to serial over LAN page. 120 [Tags] Verify_Serial_Over_LAN_Console_Button_In_Overview_Page 121 122 Click Element ${xpath_launch_serial_over_lan} 123 Wait Until Page Contains Element ${xpath_sol_console_heading} 124 125 126Verify Server LED Turn On 127 [Documentation] Turn on server LED via GUI and verify its status via Redfish. 128 [Tags] Verify_Server_LED_Turn_On 129 130 # Turn Off the server LED via Redfish. 131 Redfish.Patch /redfish/v1/Systems/system body={"IndicatorLED":"Off"} valid_status_codes=[200, 204] 132 133 # Refresh GUI. 134 Click Element ${xpath_refresh_button} 135 Wait Until Page Contains Element ${xpath_led_button} 136 137 # Turn on the server LED via GUI and sleep. 138 Click Element At Coordinates ${xpath_led_button} 0 0 139 140 # Cross check that server LED on state via Redfish. 141 ${led_status}= Redfish.Get Attribute /redfish/v1/Systems/system IndicatorLED 142 Should Be True '${led_status}' == 'Lit' 143 144 145Verify Server LED Turn Off 146 [Documentation] Turn off server LED via GUI and verify its status via Redfish. 147 [Tags] Verify_Server_LED_Turn_Off 148 149 # Turn On the server LED via Redfish. 150 Redfish.Patch /redfish/v1/Systems/system body={"IndicatorLED":"Lit"} valid_status_codes=[200, 204] 151 152 # Refresh GUI. 153 Click Element ${xpath_refresh_button} 154 Wait Until Page Contains Element ${xpath_led_button} 155 156 # Now turn off the LED via GUI. 157 Click Element At Coordinates ${xpath_led_button} 0 0 158 159 # Cross check that server LED off state via Redfish. 160 ${led_status}= Redfish.Get Attribute /redfish/v1/Systems/system IndicatorLED 161 Should Be True '${led_status}' == 'Off' 162 163 164Verify BMC Time In Overview Page 165 [Documentation] Verify that BMC date from GUI matches with BMC time via Redfish. 166 [Tags] Verify_BMC_Time_In_Overview_Page 167 168 ${date_time}= Redfish.Get Attribute ${REDFISH_BASE_URI}Managers/bmc DateTime 169 ${converted_date}= Convert Date ${date_time} result_format=%Y-%m-%d 170 171 Page Should Contain ${converted_date} 172 173 174*** Keywords *** 175 176Test Setup Execution 177 [Documentation] Do test case setup tasks. 178 179 Click Element ${xpath_overview_menu} 180 Wait Until Page Contains Element ${xpath_overview_page_header} 181 182