1*** Settings *** 2Documentation This suite is to run some test at the end of execution. 3 4Resource ../lib/resource.robot 5Resource ../lib/bmc_redfish_resource.robot 6Resource ../lib/openbmc_ffdc.robot 7 8Test Teardown Test Teardown Execution 9 10*** Variables *** 11 12# Error strings to check from journald. 13${ERROR_REGEX} SEGV|core-dump|FAILURE|Failed to start 14 15 16*** Test Cases *** 17 18Verify No BMC Dump And Application Failures In BMC 19 [Documentation] Verify no BMC dump and application failure exists in BMC. 20 [Tags] Verify_No_BMC_Dump_And_Application_Failures_In_BMC 21 22 # Check dump entry based on Redfish API availability. 23 Redfish.Login 24 ${resp}= Redfish.Get /redfish/v1/Managers/bmc/LogServices/Dump/Entries 25 ... valid_status_codes=[${HTTP_OK}, ${HTTP_NOT_FOUND}] 26 27 Log To Console ${resp} 28 29 Run Keyword If '${resp.status}' == '${HTTP_OK}' 30 ... Should Be Equal As Strings ${resp.dict["Members@odata.count"]} 0 31 ... msg=${resp.dict["Members@odata.count"]} dumps exist. 32 33 ${rest_resp}= Run Keyword If '${resp.status}' == '${HTTP_NOT_FOUND}' 34 ... Check For REST Dumps 35 36 Check For Regex In Journald ${ERROR_REGEX} error_check=${0} boot=-b 37 38 39*** Keywords *** 40 41Check For REST Dumps 42 [Documentation] Verify no BMC dump via REST path. 43 44 ${rest_resp}= Redfish.Get /xyz/openbmc_project/dump/bmc/entry/list 45 ... valid_status_codes=[${HTTP_OK}, ${HTTP_NOT_FOUND}] 46 47 Log To Console ${rest_resp} 48 49 Should Be Equal As Strings ${rest_resp.status} ${HTTP_NOT_FOUND} 50 ... msg=1 or more dumps exist. 51 52 53Test Teardown Execution 54 [Documentation] Do test teardown operation. 55 56 FFDC On Test Case Fail 57 # Remove rm command once the BMC dump APIs are working. 58 Run Keyword And Ignore Error BMC Execute Command rm -rf /var/lib/phosphor-debug-collector/dumps/ 59 Run Keyword And Ignore Error Delete All BMC Dump 60 Run Keyword And Ignore Error Redfish Delete All BMC Dumps 61 Run Keyword And Ignore Error Redfish Delete All System Dumps 62