1*** Settings ***
2
3Documentation  Test OpenBMC GUI "Reboot BMC" sub-menu of "Operation" menu.
4
5Resource        ../../lib/gui_resource.robot
6Resource        ../../../lib/common_utils.robot
7
8Suite Setup     Launch Browser And Login GUI
9Suite Teardown  Close Browser
10Test Setup      Test Setup Execution
11
12
13*** Variables ***
14
15${xpath_reboot_bmc_heading}      //h1[text()="Reboot BMC"]
16${xpath_reboot_bmc_button}       //button[contains(text(),'Reboot BMC')]
17${xpath_reboot_cancel_button}    //button[contains(text(),'Cancel')]
18
19
20*** Test Cases ***
21
22Verify Navigation To Reboot BMC Page
23    [Documentation]  Verify navigation to reboot BMC page.
24    [Tags]  Verify_Navigation_To_Reboot_BMC_Page
25
26    Page Should Contain Element  ${xpath_reboot_bmc_heading}
27
28
29Verify Existence Of All Buttons In Reboot BMC Page
30    [Documentation]  Verify existence of all buttons in reboot BMC page.
31    [Tags]  Verify_Existence_Of_All_Buttons_In_Reboot_BMC_Page
32
33    Page Should Contain Element  ${xpath_reboot_bmc_button}
34
35
36Verify Existence Of All Sections In Reboot BMC Page
37    [Documentation]  Verify Existence Of All Sections In Reboot BMC Page.
38    [Tags]  Verify_Existence_Of_All_Sections_In_Reboot_BMC_Page
39
40    Page Should Contain  Last BMC reboot
41
42
43Verify Canceling Operation On BMC Reboot Operation
44    [Documentation]  Verify Canceling Operation On BMC Reboot operation
45    [Tags]  Verify_Canceling_Operation_On_BMC_Reboot_Operation
46
47    Click Element  ${xpath_reboot_bmc_button}
48    Click Element At Coordinates  ${xpath_reboot_cancel_button}  0  0
49    Wait Until Element Is Not Visible  ${xpath_reboot_cancel_button}  timeout=15
50
51
52Verify BMC Reboot Operation
53    [Documentation]  Verify BMC Reboot operation
54    [Tags]  Verify_BMC_Reboot_Operation
55
56    Click Element  ${xpath_reboot_bmc_button}
57    Click Element At Coordinates  ${xpath_confirm_button}  0  0
58
59    # Checks BMC gets into Unpingable state and later becomes Pingable.
60    Wait Until Keyword Succeeds  1 min  5 sec  Is BMC Unpingable
61    Wait For Host To Ping  ${OPENBMC_HOST}  1 min
62
63    Wait Until Keyword Succeeds  3 min  10 sec  Is BMC Operational
64
65    Click Element  ${xpath_refresh_button}
66    Wait Until Element Is Visible  ${xpath_reboot_bmc_button}  timeout=10
67
68
69*** Keywords ***
70
71Test Setup Execution
72    [Documentation]  Do test case setup tasks.
73
74    Click Element  ${xpath_operations_menu}
75    Click Element  ${xpath_reboot_bmc_sub_menu}
76    Wait Until Keyword Succeeds  30 sec  10 sec  Location Should Contain  reboot-bmc
77    Wait Until Element Is Not Visible   ${xpath_page_loading_progress_bar}  timeout=30
78