1*** Settings *** 2Documentation Verify that firmware update properties. 3 4Resource ../../lib/resource.robot 5Resource ../../lib/bmc_redfish_resource.robot 6Resource ../../lib/openbmc_ffdc.robot 7Library ../../lib/gen_robot_valid.py 8 9Suite Setup Redfish.Login 10Suite Teardown Redfish.Logout 11Test Setup Printn 12Test Teardown FFDC On Test Case Fail 13 14Test Tags Firmware_Property 15 16*** Test Cases *** 17 18Verify Firmware Update ApplyTime Immediate 19 [Documentation] Verify supported apply time "Immediate" property. 20 [Tags] Verify_Firmware_Update_ApplyTime_Immediate 21 22 # Example: 23 # /redfish/v1/UpdateService 24 # "HttpPushUriOptions": { 25 # "HttpPushUriApplyTime": { 26 # "ApplyTime": "Immediate" 27 # } 28 # } 29 30 Redfish.Patch ${REDFISH_BASE_URI}UpdateService 31 ... body={'HttpPushUriOptions' : {'HttpPushUriApplyTime' : {'ApplyTime' : 'Immediate'}}} 32 ... valid_status_codes=[${HTTP_OK}, ${HTTP_NO_CONTENT}] 33 34 ${http_push_uri_options}= Redfish.Get Attribute ${REDFISH_BASE_URI}UpdateService HttpPushUriOptions 35 Rprint Vars http_push_uri_options 36 Valid Value http_push_uri_options["HttpPushUriApplyTime"]["ApplyTime"] ['Immediate'] 37 38 39Verify Firmware Update ApplyTime OnReset 40 [Documentation] Verify supported apply time "OnReset" property. 41 [Tags] Verify_Firmware_Update_ApplyTime_OnReset 42 43 # Example: 44 # /redfish/v1/UpdateService 45 # "HttpPushUriOptions": { 46 # "HttpPushUriApplyTime": { 47 # "ApplyTime": "OnReset" 48 # } 49 # } 50 51 Redfish.Patch ${REDFISH_BASE_URI}UpdateService 52 ... body={'HttpPushUriOptions' : {'HttpPushUriApplyTime' : {'ApplyTime' : 'OnReset'}}} 53 ... valid_status_codes=[${HTTP_OK}, ${HTTP_NO_CONTENT}] 54 55 ${http_push_uri_options}= Redfish.Get Attribute ${REDFISH_BASE_URI}UpdateService HttpPushUriOptions 56 Rprint Vars http_push_uri_options 57 Valid Value http_push_uri_options["HttpPushUriApplyTime"]["ApplyTime"] ['OnReset'] 58 59 60Verify Firmware Update ApplyTime Invalid 61 [Documentation] Verify supported apply time returns error on invalid value. 62 [Tags] Verify_Firmware_Update_ApplyTime_Invalid 63 64 Redfish.Patch ${REDFISH_BASE_URI}UpdateService 65 ... body={'HttpPushUriOptions' : {'HttpPushUriApplyTime' : {'ApplyTime' : 'Invalid'}}} 66 ... valid_status_codes=[${HTTP_BAD_REQUEST}] 67