1*** Settings *** 2 3Documentation Test Open BMC GUI BMC host information under GUI Header. 4 5Library DateTime 6 7Resource ../../lib/resource.robot 8 9Suite Setup Launch Browser And Login OpenBMC GUI 10Suite Teardown Close Browser 11 12 13*** Variables *** 14${xpath_bmc_ip} //*[contains(@class, "header__server-ip")] 15${xpath_select_refresh_button} //*[contains(@class, "header__page-refresh")] 16${xpath_select_date_text} //p[@class="header__refresh"] 17${xpath_header_scroll} //*[@class="header__info"] 18 19*** Test Cases *** 20 21Verify Server Power Button 22 [Documentation] Verify server power page on clicking server power button. 23 [Tags] Verify_Server_Power_Button 24 25 Wait Until Element Is Visible ${xpath_select_server_power} 26 Click Element ${xpath_select_server_power} 27 Wait Until Page Contains Select a power operation 28 29Verify Server Health Button 30 [Documentation] Verify server health page on clicking server health button. 31 [Tags] Verify_Server_Health_Button 32 33 Wait Until Element Is Visible ${xpath_select_server_health} 34 Click Element ${xpath_select_server_health} 35 Wait Until Page Contains All events from the BMC 36 37Verify IP address 38 [Documentation] Verify BMC IP address displayed in GUI header. 39 [Tags] Verify_IP_address 40 41 # NOTE: gui_displayed_ip can be either a host name or an IP address. 42 # (e.g. "machinex" or "xx.xx.xx.xx"). 43 ${gui_displayed_ip}= Get Text ${xpath_bmc_ip} 44 Should Contain ${gui_displayed_ip} ${OPENBMC_HOST} 45 46 47Verify Refresh Button 48 [Documentation] Verify Refresh Button in GUI header. 49 [Tags] Verify_Refresh_Button 50 51 # Verify power is on after refresh button. 52 53 Expected Initial Test State Off 54 Wait Until Element Is Visible ${xpath_select_refresh_button} 55 Click Element ${xpath_select_refresh_button} 56 GUI Power On 57 Wait Until Element Is Visible ${xpath_select_refresh_button} 58 Click Element ${xpath_select_refresh_button} 59 Wait Until Page Contains Running 60 61Verify Date Last Refreshed 62 [Documentation] Verify Date Last Refreshed text in GUI header. 63 [Tags] Verify_Date_Last_Refreshed 64 65 Wait Until Element Is Visible ${xpath_select_date_text} 66 ${date_info_1st_read}= Get Text ${xpath_select_date_text} 67 Should Not Be Empty ${date_info_1st_read} 68 ${current_date}= Get Time 69 ${date_conversion}= Convert Date ${current_date} result_format=%b %d %Y 70 71 ${mmmdd} ${yyyy}= Split String From Right ${date_conversion} ${SPACE} 1 72 Should Contain ${date_info_1st_read} ${mmmdd} msg=Month and day mismatch. 73 Should Contain ${date_info_1st_read} ${yyyy} msg=Year mismatch. 74 75 # Refresh button pressed. 76 Click Element ${xpath_select_refresh_button} 77 Sleep 2s 78 79 ${date_info_2nd_read}= Get Text ${xpath_select_date_text} 80 ${current_date}= Get Time 81 ${date_conversion}= Convert Date ${current_date} result_format=%b %d %Y 82 83 ${mmmdd} ${yyyy}= Split String From Right ${date_conversion} ${SPACE} 1 84 Should Contain ${date_info_1st_read} ${mmmdd} msg=Month and day mismatch. 85 Should Contain ${date_info_1st_read} ${yyyy} msg=Year mismatch. 86 87 # Comparison between 1st and 2nd read. 88 Should Not Be Equal As Strings ${date_info_1st_read} 89 ... ${date_info_2nd_read} 90 91Verify GUI Header Scrolls 92 [Documentation] Verify GUI header scrolls on click "Server Info" element. 93 [Tags] Verify_GUI_Header_Scrolls 94 95 ${current_browser_width} ${current_browser_height}= Get Window Size 96 Maximize Browser Window 97 ${max_browser_width} ${max_browser_height}= Get Window Size 98 # Shrink the browser to half from max size. 99 ${shrink_browser_width}= Evaluate ${max_browser_width} / 2 100 ${shrink_browser_height}= Evaluate ${max_browser_height} / 2 101 # Reduce the browser size which enables scroll element. 102 Set Window Size ${shrink_browser_width} ${shrink_browser_height} 103 Click Element ${xpath_header_scroll} 104 # Below element is to scroll back. 105 Wait Until Page Does Not Contain Element ${xpath_refresh_circle} 106 Click Element ${xpath_header_scroll} 107 # Restore to original browser size. 108 Set Window Size ${current_browser_width} ${current_browser_height} 109