Removing keyword to install certificate using REST

Change-Id: I7b5e7869af19e64cbbb18d2ececfd9b3fa9f6c15
Signed-off-by: Rahul Maheshwari <rahulmaheshwari@in.ibm.com>
diff --git a/extended/code_update/bmc_code_update.robot b/extended/code_update/bmc_code_update.robot
index 23293e0..4227fe2 100644
--- a/extended/code_update/bmc_code_update.robot
+++ b/extended/code_update/bmc_code_update.robot
@@ -204,10 +204,15 @@
     ${file_data}=  OperatingSystem.Get Binary File  ${cert_file_path}
     ${cert_file_content}=  OperatingSystem.Get File  ${cert_file_path}
 
-    Install Certificate File On BMC  ${CLIENT_CERTIFICATE_URI}
-    ...  data=${file_data}
+    Redfish.Login
+    ${cert_id}=  Install Certificate File On BMC  ${REDFISH_CA_CERTIFICATE_URI}  ok  data=${file_data}
+    Logging  Installed certificate id: ${cert_id}
 
-    ${bmc_cert_content}=  Get Certificate File Content From BMC  Client
+    # Adding delay after certificate installation.
+    Sleep  30s
+
+    ${bmc_cert_content}=  redfish_utils.Get Attribute
+    ...  /redfish/v1/Managers/bmc/Truststore/Certificates/${cert_id}  CertificateString
     Should Contain  ${cert_file_content}  ${bmc_cert_content}
 
     Upload And Activate Image  ${IMAGE_FILE_PATH}
@@ -215,9 +220,13 @@
     OBMC Reboot (off)
     Verify Running BMC Image  ${IMAGE_FILE_PATH}
 
-    ${bmc_cert_content}=  Get Certificate File Content From BMC  Client
+    Redfish.Login
+    ${bmc_cert_content}=  redfish_utils.Get Attribute
+    ...  ${REDFISH_CA_CERTIFICATE_URI}/${cert_id}  CertificateString
     Should Contain  ${cert_file_content}  ${bmc_cert_content}
 
+    Redfish.Logout
+
 
 Test Basic BMC Performance After Code Update
     [Documentation]  Check performance of memory, CPU & file system of BMC.
diff --git a/lib/certificate_utils.robot b/lib/certificate_utils.robot
index a378a84..b68fe6a 100755
--- a/lib/certificate_utils.robot
+++ b/lib/certificate_utils.robot
@@ -9,37 +9,36 @@
 *** Keywords ***
 
 Install Certificate File On BMC
-    [Documentation]  Install certificate file in BMC using REST PUT operation.
-    [Arguments]  ${uri}  ${status}=ok  ${quiet}=${1}  &{kwargs}
+    [Documentation]  Install certificate file in BMC using POST operation.
+    [Arguments]  ${uri}  ${status}=ok  &{kwargs}
 
     # Description of argument(s):
-    # uri         URI for installing certificate file via REST
-    #             e.g. "/xyz/openbmc_project/certs/server/https".
-    # status      Expected status of certificate installation via REST
+    # uri         URI for installing certificate file via Redfish
+    #             e.g. "/redfish/v1/AccountService/LDAP/Certificates".
+    # status      Expected status of certificate installation via Redfish
     #             e.g. error, ok.
-    # quiet       If enabled, turns off logging to console.
     # kwargs      A dictionary of keys/values to be passed directly to
-    #             PUT Request.
+    #             POST Request.
 
-    Initialize OpenBMC  quiet=${quiet}
+    Initialize OpenBMC
 
     ${headers}=  Create Dictionary  Content-Type=application/octet-stream
     ...  X-Auth-Token=${XAUTH_TOKEN}
     Set To Dictionary  ${kwargs}  headers  ${headers}
 
-    Run Keyword If  '${quiet}' == '${0}'  Log Request  method=Put
-    ...  base_uri=${uri}  args=&{kwargs}
-
-    ${ret}=  Put Request  openbmc  ${uri}  &{kwargs}
-    Run Keyword If  '${quiet}' == '${0}'  Log Response  ${ret}
+    ${ret}=  Post Request  openbmc  ${uri}  &{kwargs}
+    ${content_json}=  To JSON  ${ret.content}
+    ${cert_id}=  Set Variable If  '${ret.status_code}' == '${HTTP_OK}'  ${content_json["Id"]}  -1
 
     Run Keyword If  '${status}' == 'ok'
     ...  Should Be Equal As Strings  ${ret.status_code}  ${HTTP_OK}
     ...  ELSE IF  '${status}' == 'error'
-    ...  Should Be Equal As Strings  ${ret.status_code}  ${HTTP_BAD_REQUEST}
+    ...  Should Be Equal As Strings  ${ret.status_code}  ${HTTP_INTERNAL_SERVER_ERROR}
 
     Delete All Sessions
 
+    [Return]  ${cert_id}
+
 
 Get Certificate Content From BMC Via Openssl
     [Documentation]  Get certificate content from BMC via openssl.
diff --git a/redfish/managers/test_certificate.robot b/redfish/managers/test_certificate.robot
index 09b3e6e..2f88184 100644
--- a/redfish/managers/test_certificate.robot
+++ b/redfish/managers/test_certificate.robot
@@ -225,37 +225,6 @@
     [Return]  ${cert_id}
 
 
-Install Certificate File On BMC
-    [Documentation]  Install certificate file in BMC using POST operation.
-    [Arguments]  ${uri}  ${status}=ok  &{kwargs}
-
-    # Description of argument(s):
-    # uri         URI for installing certificate file via Redfish
-    #             e.g. "/redfish/v1/AccountService/LDAP/Certificates".
-    # status      Expected status of certificate installation via Redfish
-    #             e.g. error, ok.
-    # kwargs      A dictionary of keys/values to be passed directly to
-    #             POST Request.
-
-    Initialize OpenBMC  quiet=${quiet}
-
-    ${headers}=  Create Dictionary  Content-Type=application/octet-stream
-    ...  X-Auth-Token=${XAUTH_TOKEN}
-    Set To Dictionary  ${kwargs}  headers  ${headers}
-
-    ${ret}=  Post Request  openbmc  ${uri}  &{kwargs}
-    ${content_json}=  To JSON  ${ret.content}
-    ${cert_id}=  Set Variable If  '${ret.status_code}' == '${HTTP_OK}'  ${content_json["Id"]}  -1
-
-    Run Keyword If  '${status}' == 'ok'
-    ...  Should Be Equal As Strings  ${ret.status_code}  ${HTTP_OK}
-    ...  ELSE IF  '${status}' == 'error'
-    ...  Should Be Equal As Strings  ${ret.status_code}  ${HTTP_INTERNAL_SERVER_ERROR}
-
-    Delete All Sessions
-
-    [Return]  ${cert_id}
-
 Replace Certificate Via Redfish
     [Documentation]  Test 'replace certificate' operation in the BMC via Redfish.
     [Arguments]  ${cert_type}  ${cert_format}  ${expected_status}