blob: 92c3e233c69d61bd5397db6f4f641d4c3ebb13f4 [file] [log] [blame]
*** Settings ***
Resource ../lib/utils.robot
*** Variables ***
# Once the State Manager support is ready remove this variables block
# and use appropriate resource or variable file imports
# State Manager States
${HOST_POWEROFF_TRANS} xyz.openbmc_project.State.Host.Transition.Off
${HOST_POWERON_TRANS} xyz.openbmc_project.State.Host.Transition.On
${HOST_POWEROFF_STATE} xyz.openbmc_project.State.Host.HostState.Off
${HOST_POWERON_STATE} xyz.openbmc_project.State.Host.HostState.Running
${CHASSIS_POWEROFF_TRANS} xyz.openbmc_project.State.Chassis.Transition.Off
${CHASSIS_POWERON_TRANS} xyz.openbmc_project.State.Chassis.Transition.On
${CHASSIS_POWEROFF_STATE} xyz.openbmc_project.State.Chassis.PowerState.Off
${CHASSIS_POWERON_STATE} xyz.openbmc_project.State.Chassis.PowerState.On
# State Manager URI's
${HOST_STATE_URI} /xyz/openbmc_project/state/host0/
${CHASSIS_STATE_URI} /xyz/openbmc_project/state/chassis0/
${QUIET} ${0}
*** Keywords ***
Initiate Host Boot
[Documentation] Initiate host power on.
${args}= Create Dictionary data=${HOST_POWERON_TRANS}
Write Attribute
... ${HOST_STATE_URI} RequestedHostTransition data=${args}
Wait Until Keyword Succeeds
... 10 min 10 sec Is Host Running
Initiate Host PowerOff
[Documentation] Initiate host power off.
${args}= Create Dictionary data=${HOST_POWEROFF_TRANS}
Write Attribute
... ${HOST_STATE_URI} RequestedHostTransition data=${args}
Wait Until Keyword Succeeds
... 3 min 10 sec Is Host Off
Is Host Running
[Documentation] Check if Chassis and Host state is ON.
${power_state}= Get Chassis Power State
Should Be Equal ${CHASSIS_POWERON_STATE} ${power_state}
${host_state}= Get Host State
Should Be Equal ${HOST_POWERON_STATE} ${host_state}
Is Host Off
[Documentation] Check if Chassis and Host state is OFF.
${power_state}= Get Chassis Power State
Should Be Equal ${CHASSIS_POWEROFF_STATE} ${power_state}
${host_state}= Get Host State
Should Be Equal ${HOST_POWEROFF_STATE} ${host_state}
Get Host State
[Documentation] Return the state of the host as a string.
[Arguments] ${quiet}=${QUIET}
# quiet - Suppress REST output logging to console.
${state}=
... Read Attribute ${HOST_STATE_URI} CurrentHostState
... quiet=${quiet}
[Return] ${state}
Get Chassis Power State
[Documentation] Return the power state of the Chassis
... as a string.
[Arguments] ${quiet}=${QUIET}
# quiet - Suppress REST output logging to console.
${state}=
... Read Attribute ${CHASSIS_STATE_URI} CurrentPowerState
... quiet=${quiet}
[Return] ${state}