blob: 3efa6f26d1418a6d932915ca7646567a47662edb [file] [log] [blame]
*** Settings ***
Documentation Module to test IPMI cold and warm reset functionalities.
Resource ../../lib/ipmi_client.robot
Resource ../../lib/openbmc_ffdc.robot
Resource ../../lib/state_manager.robot
Resource ../../lib/utils.robot
Resource ../../lib/boot_utils.robot
Suite Setup Suite Setup Execution
Test Teardown FFDC On Test Case Fail
*** Variables ***
# User may pass LOOP_COUNT.
${LOOP_COUNT} ${1}
*** Test Cases ***
Test IPMI Warm Reset
[Documentation] Check IPMI warm reset and wait for BMC to become online.
[Tags] Test_IPMI_Warm_Reset
Repeat Keyword ${LOOP_COUNT} times IPMI MC Reset Warm (off)
Test IPMI Cold Reset
[Documentation] Check IPMI cold reset and wait for BMC to become online.
[Tags] Test_IPMI_Cold_Reset
Repeat Keyword ${LOOP_COUNT} times IPMI MC Reset Cold (off)
Verify BMC Power Cycle via IPMI
[Documentation] Verify IPMI power cycle command works fine.
[Tags] Verify_BMC_Power_Cycle_via_IPMI
REST Power On stack_mode=skip
Run External IPMI Standard Command chassis power cycle
Wait Until Keyword Succeeds 3 min 10 sec Is Host Off
Wait Until Keyword Succeeds 3 min 10 sec Is Host Running
*** Keywords ***
Suite Setup Execution
[Documentation] Power off and wait for chassis power to be off.
${resp}= Run IPMI Standard Command chassis power off
Should Be Equal As Strings ${resp} Chassis Power Control: Down/Off
... msg=Unexpected chassis power control message output.
Wait Until Keyword Succeeds 3 min 20 sec Is Chassis Power Off
Is Chassis Power Off
[Documentation] Check for chassis power to be off.
${resp}= Run IPMI Standard Command chassis power status
Should Be Equal As Strings ${resp} Chassis Power is off
... msg=Chassis power is not off as expected.