Added testcase to verify server certificate view via Openssl

Change-Id: I59be2da847a3f119d14add1a41b5d197b993a9c8
Signed-off-by: Rahul Maheshwari <rahulmaheshwari@in.ibm.com>
diff --git a/redfish/managers/test_certificate.robot b/redfish/managers/test_certificate.robot
index 17d9582..758bc05 100644
--- a/redfish/managers/test_certificate.robot
+++ b/redfish/managers/test_certificate.robot
@@ -38,6 +38,26 @@
     Client                Expired Certificate                 error
 
 
+Verify Server Certificate View Via Openssl
+    [Documentation]  Verify server certificate via openssl command.
+    [Tags]  Verify_Server_Certificate_View_Via_Openssl
+
+    redfish.Login
+
+    ${cert_file_path}=  Generate Certificate File Via Openssl  Valid Certificate Valid Privatekey
+    ${file_data}=  OperatingSystem.Get Binary File  ${cert_file_path}
+
+    ${certificate_dict}=  Create Dictionary
+    ...  @odata.id=/redfish/v1/Managers/bmc/NetworkProtocol/HTTPS/Certificates/1
+    ${payload}=  Create Dictionary  CertificateString=${file_data}
+    ...  CertificateType=PEM  CertificateUri=${certificate_dict}
+
+    ${resp}=  redfish.Post  /redfish/v1/CertificateService/Actions/CertificateService.ReplaceCertificate
+    ...  body=${payload}
+
+    Wait Until Keyword Succeeds  2 mins  15 secs  Verify Certificate Visible Via OpenSSL  ${cert_file_path}
+
+
 *** Keywords ***
 
 Replace Certificate Via Redfish
@@ -77,6 +97,18 @@
     ...    Should Not Contain  ${cert_file_content}  ${bmc_cert_content}
 
 
+Verify Certificate Visible Via OpenSSL
+    [Documentation]  Checks if given certificate is visible via openssl's showcert command.
+    [Arguments]  ${cert_file_path}
+
+    # Description of argument(s):
+    # cert_file_path           Certificate file path.
+
+    ${cert_file_content}=  OperatingSystem.Get File  ${cert_file_path}
+    ${openssl_cert_content}=  Get Certificate Content From BMC Via Openssl
+    Should Contain  ${cert_file_content}  ${openssl_cert_content}
+
+
 Suite Setup Execution
     [Documentation]  Do suite setup tasks.