| *** Settings *** |
| Documentation This example demonstrates executing commands on a remote machine |
| ... and getting their output and the return code. |
| ... |
| ... Notice how connections are handled as part of the suite setup and |
| ... teardown. This saves some time when executing several test cases. |
| |
| Resource ../lib/rest_client.robot |
| Resource ../lib/ipmi_client.robot |
| Resource ../lib/openbmc_ffdc.robot |
| Resource ../lib/state_manager.robot |
| Library ../data/model.py |
| Resource ../lib/boot_utils.robot |
| Resource ../lib/utils.robot |
| |
| Suite Setup Suite Setup Execution |
| Test Teardown Test Teardown Execution |
| |
| *** Variables *** |
| |
| ${stack_mode} skip |
| ${model}= ${OPENBMC_MODEL} |
| |
| *** Test Cases *** |
| |
| io_board Present |
| [Documentation] Verify that the IO board is present. |
| [Tags] io_board_Present |
| ${uri}= Get System component io_board |
| Verify The Attribute ${uri} Present ${True} |
| |
| io_board Fault |
| [Documentation] Verify that the IO board signals "fault". |
| [Tags] io_board_Fault |
| ${uri}= Get System component io_board |
| Verify The Attribute ${uri} fault ${False} |
| |
| *** Keywords *** |
| |
| Suite Setup Execution |
| [Documentation] Initial suite setup. |
| |
| # Boot Host. |
| REST Power On |
| |
| ${resp}= Read Properties ${OPENBMC_BASE_URI}enumerate timeout=30 |
| Set Suite Variable ${SYSTEM_INFO} ${resp} |
| log Dictionary ${resp} |
| |
| Get System component |
| [Documentation] Get the system component. |
| [Arguments] ${type} |
| ${list}= Get Dictionary Keys ${SYSTEM_INFO} |
| ${resp}= Get Matches ${list} regexp=^.*[0-9a-z_].${type}\[0-9]*$ |
| ${url}= Get From List ${resp} 0 |
| [Return] ${url} |
| |
| |
| Test Teardown Execution |
| [Documentation] Do the post test teardown. |
| ... 1. Capture FFDC on test failure. |
| ... 2. Close all open SSH connections. |
| |
| FFDC On Test Case Fail |
| Close All Connections |