1*** Settings ***
2
3Documentation   Test OpenBMC GUI "Server power operation" sub-menu of
4...             "Server control".
5
6Resource        ../../lib/resource.robot
7
8Suite Setup     Launch Browser And Login OpenBMC GUI
9Suite Teardown  Close Browser
10Test Setup      Navigate To Power Operation Page
11
12
13*** Variables ***
14
15${xpath_power_indicator_bar}     //*[@id='power-indicator-bar']
16${xpath_shutdown_button}         //button[contains(text(), "Shut down")]
17${xpath_reboot_button}           //button[contains(text(), "Reboot")]
18
19
20*** Test Cases ***
21
22Verify System State At Power Off
23    [Documentation]  Verify system state at power off.
24    [Tags]  Verify_System_State_At_Power_Off
25
26    Test Setup Execution  ${OBMC_PowerOff_state}
27    Element Should Contain  ${xpath_power_indicator_bar}  Off
28
29
30Verify BMC IP In Server Power Operation Page
31    [Documentation]  Verify BMC IP in server power operation page.
32    [Tags]  Verify_BMC_IP_In_Server_Power_Operation_Page
33
34    Element Should Contain  ${xpath_power_indicator_bar}  ${OPENBMC_HOST}
35
36
37Verify Shutdown Button At Power Off
38    [Documentation]  Verify that shutdown button is not present at power Off.
39    [Tags]  Verify_Shutdown_Button_At_Power_Off
40
41    Test Setup Execution  ${OBMC_PowerOff_state}
42    Element Should Not Be Visible  ${xpath_shutdown_button}
43
44
45Verify Reboot Button At Power Off
46    [Documentation]  Verify that reboot button is not present at power Off.
47    [Tags]  Verify_Reboot_Button_At_Power_Off
48
49    Test Setup Execution  ${OBMC_PowerOff_state}
50    Element Should Not Be Visible  ${xpath_reboot_button}
51
52
53*** Keywords ***
54
55Navigate To Power Operation Page
56   [Documentation]  Navigate to server power operation page.
57
58    Wait Until Page Does Not Contain Element  ${xpath_refresh_circle}
59    Click Element  ${xpath_select_server_control}
60    Wait Until Page Does Not Contain Element  ${xpath_refresh_circle}
61    Click Element  ${xpath_select_server_power_operations}
62    Wait Until Page Contains  Server power operations
63