Robotframework request package upgrade changes
Current working package version
robotframework-requests 0.7.2
To Test:
pip3 install robotframework-requests -U
or
# Once this commit is merged.
pip3 install -r requirements.txt
Version latest:
robotframework-requests 0.9.3
Refer Documentation:
https://marketsquare.github.io/robotframework-requests/doc/RequestsLibrary.html
What is not changed:
- The test cases under directory tests/ is not modified and is
deprecated but you can continue using it with older package
and configuration using
git clone -b v3.0-stable https://github.com/openbmc/openbmc-test-automation
Tested:
Upstream HW_CI test list, firmware code update and few other
test suite like ipmi, certificate, dumps, ffdc and redfish
test suites.
Note: I have not tested end to end, so it is likely there could be
grey areas where it could fail but should be minor w.r.t
response data format.
Resolves: openbmc/openbmc-test-automation#2105
Change-Id: Ie03b25ff88948bcccb09e9d82f8da86e28c92697
Signed-off-by: George Keishing <gkeishin@in.ibm.com>
diff --git a/openpower/ext_interfaces/test_client_identifier.robot b/openpower/ext_interfaces/test_client_identifier.robot
index d9592dd..8cfa771 100644
--- a/openpower/ext_interfaces/test_client_identifier.robot
+++ b/openpower/ext_interfaces/test_client_identifier.robot
@@ -182,13 +182,12 @@
FOR ${client} ${session} IN ZIP ${client_ids} ${session_ids}
${resp}= Redfish Get Request /redfish/v1/SessionService/Sessions/${session["Id"]}
- ${sessions}= To Json ${resp.content}
- Rprint Vars sessions
- @{words} = Split String ${sessions["ClientOriginIPAddress"]} :
+ Rprint Vars resp.json()
+ @{words} = Split String ${resp.json()["ClientOriginIPAddress"]} :
${ip_address}= Get Running System IP
Set Test Variable ${temp_ipaddr} ${words}[-1]
- Valid Value client ['${sessions["Oem"]["OpenBMC"]["ClientID"]}']
- Valid Value session["Id"] ['${sessions["Id"]}']
+ Valid Value client ['${resp.json()["Oem"]["OpenBMC"]["ClientID"]}']
+ Valid Value session["Id"] ['${resp.json()["Id"]}']
Valid Value temp_ipaddr ${ip_address}
END
diff --git a/openpower/ext_interfaces/test_lock_management.robot b/openpower/ext_interfaces/test_lock_management.robot
index 4ca37e5..16f6e8b 100644
--- a/openpower/ext_interfaces/test_lock_management.robot
+++ b/openpower/ext_interfaces/test_lock_management.robot
@@ -8,6 +8,7 @@
Resource ../../lib/external_intf/management_console_utils.robot
Resource ../../lib/rest_response_code.robot
Library ../../lib/bmc_network_utils.py
+Library JSONLibrary
Suite Setup Run Keyword And Ignore Error Delete All Redfish Sessions
Suite Teardown Run Keyword And Ignore Error Delete All Redfish Sessions
@@ -454,8 +455,10 @@
# status_code HTTP status code.
${lock_dict_param}= Form Data To Acquire Lock ${lock_type}
+ ${lock_dict_param}= Convert JSON To String ${lock_dict_param}
${resp}= Redfish Post Request
... /ibm/v1/HMC/LockService/Actions/LockService.AcquireLock data=${lock_dict_param}
+ ... expected_status=any
Should Be Equal As Strings ${resp.status_code} ${status_code}
Run Keyword If ${status_code} == ${HTTP_BAD_REQUEST}
@@ -475,8 +478,10 @@
# status_code HTTP status code.
${lock_dict_param}= Create Data To Acquire List Of Lock ${lock_type}
+ ${lock_dict_param}= Convert JSON To String ${lock_dict_param}
${resp}= Redfish Post Request
... /ibm/v1/HMC/LockService/Actions/LockService.AcquireLock data=${lock_dict_param}
+ ... expected_status=any
Should Be Equal As Strings ${resp.status_code} ${status_code}
Run Keyword If ${status_code} == ${HTTP_CONFLICT}
@@ -497,6 +502,7 @@
# status_code HTTP status code.
${lock_dict_param}= Form Data To Acquire Invalid Lock ${lock_type}
+ ${lock_dict_param}= Convert JSON To String ${lock_dict_param}
${resp}= Redfish Post Request
... /ibm/v1/HMC/LockService/Actions/LockService.AcquireLock data=${lock_dict_param}
Should Be Equal As Strings ${resp.status_code} ${status_code}
@@ -516,6 +522,7 @@
${lock_dict_param}=
... Form Data To Acquire Invalid Lock With Invalid Data Type Of Resource ID ${lock_type}
+ ${lock_dict_param}= Convert JSON To String ${lock_dict_param}
${resp}= Redfish Post Request
... /ibm/v1/HMC/LockService/Actions/LockService.AcquireLock data=${lock_dict_param}
Should Be Equal As Strings ${resp.status_code} ${status_code}
@@ -1236,7 +1243,7 @@
# exp_status_code Expected HTTP status code.
${resp}= Redfish Post Request /ibm/v1/HMC/LockService/Actions/LockService.GetLockList
- ... data={"SessionIDs": ${session_id_list}}
+ ... data={"SessionIDs":${session_id_list}} expected_status=any
Should Be Equal As Strings ${resp.status_code} ${exp_status_code}
${locks}= Evaluate json.loads('''${resp.text}''') json
diff --git a/openpower/ext_interfaces/test_savearea_management.robot b/openpower/ext_interfaces/test_savearea_management.robot
index ed0a123..6c122d1 100644
--- a/openpower/ext_interfaces/test_savearea_management.robot
+++ b/openpower/ext_interfaces/test_savearea_management.robot
@@ -366,7 +366,8 @@
${headers}= Create Dictionary X-Auth-Token=${XAUTH_TOKEN}
Set To Dictionary ${data} headers ${headers}
- ${resp}= Delete Request openbmc /ibm/v1/Host/ConfigFiles/${conf_file} &{data}
+ ${resp}= DELETE On Session openbmc /ibm/v1/Host/ConfigFiles/${conf_file} &{data}
+ ... expected_status=any
Should Be Equal As Strings ${resp.status_code} ${status_code}
${description}= Return Description Of Response ${resp.text}
@@ -386,7 +387,8 @@
${headers}= Create Dictionary X-Auth-Token=${XAUTH_TOKEN}
Set To Dictionary ${data} headers ${headers}
- ${resp}= Post Request openbmc /ibm/v1/Host/ConfigFiles/Actions/IBMConfigFiles.DeleteAll &{data}
+ ${resp}= POST On Session openbmc /ibm/v1/Host/ConfigFiles/Actions/IBMConfigFiles.DeleteAll &{data}
+ ... expected_status=any
Should Be Equal As Strings ${resp.status_code} ${status_code}
@@ -428,7 +430,8 @@
${kwargs}= Create Dictionary data=${image_data}
Set To Dictionary ${kwargs} headers ${headers}
- ${resp}= Put Request openbmc /ibm/v1/Host/ConfigFiles/${conf_file} &{kwargs} timeout=10
+ ${resp}= PUT On Session openbmc /ibm/v1/Host/ConfigFiles/${conf_file} &{kwargs} timeout=10
+ ... expected_status=any
Should Be Equal As Strings ${resp.status_code} ${status_code}
${description}= Return Description Of Response ${resp.text}
@@ -592,7 +595,8 @@
# status_code HTTPS status code.
FOR ${conf_file} IN @{file_name}
- ${resp}= Get Request openbmc /ibm/v1/Host/ConfigFiles/${conf_file}
+ ${resp}= GET On Session openbmc /ibm/v1/Host/ConfigFiles/${conf_file}
+ ... expected_status=any
Should Be Equal As Strings ${resp.status_code} ${status_code}
${Partition_file_data}= Remove String ${resp.text} \\n
diff --git a/openpower/ext_interfaces/test_vmicert_management.robot b/openpower/ext_interfaces/test_vmicert_management.robot
index 02b0e3a..9eeb34b 100644
--- a/openpower/ext_interfaces/test_vmicert_management.robot
+++ b/openpower/ext_interfaces/test_vmicert_management.robot
@@ -614,7 +614,8 @@
${csr_data}= Create Dictionary CsrString ${csr}
Set To Dictionary ${data} data ${csr_data}
- ${resp}= Post Request openbmc ${cert_uri} &{data} headers=${headers} timeout=${read_timeout}
+ ${resp}= POST On Session openbmc ${cert_uri} &{data} headers=${headers}
+ ... timeout=${read_timeout} expected_status=any
Log to console ${resp.content}
[Return] ${resp}
@@ -643,7 +644,8 @@
${cert_uri}= Set Variable ${VMI_BASE_URI}Host/Certificate/root
- ${resp}= Get Request openbmc ${cert_uri} &{data} headers=${headers}
+ ${resp}= GET On Session openbmc ${cert_uri} &{data} headers=${headers}
+ ... expected_status=any
Should Be Equal As Strings ${resp.status_code} ${valid_status_code}
Return From Keyword If ${resp.status_code} != ${HTTP_OK}
diff --git a/openpower/test_inband_bmc_auth_reset.robot b/openpower/test_inband_bmc_auth_reset.robot
index 5b9f1fa..e6f9237 100644
--- a/openpower/test_inband_bmc_auth_reset.robot
+++ b/openpower/test_inband_bmc_auth_reset.robot
@@ -23,7 +23,8 @@
${headers}= Create Dictionary Content-Type=application/json
@{credentials}= Create List ${OPENBMC_USERNAME} ${OPENBMC_PASSWORD}
${data}= create dictionary data=@{credentials}
- ${resp}= Post Request openbmc /login data=${data} headers=${headers}
+ ${resp}= POST On Session openbmc /login data=${data} headers=${headers}
+ ... expected_status=any
Should Be Equal As Strings ${resp.status_code} ${HTTP_UNAUTHORIZED}
# Call reset method.