Add service user login test automation suite
Test cases added:
- Verify Service User Login With Valid ACF file
- Verify Service User Login Without ACF file
Change-Id: Ib2ee77b381b596bd5fec88b83c692d2f91c53c9f
Signed-off-by: manashsarma <manashsarma@in.ibm.com>
diff --git a/openpower/service_account/test_service_login.robot b/openpower/service_account/test_service_login.robot
new file mode 100644
index 0000000..a2a583e
--- /dev/null
+++ b/openpower/service_account/test_service_login.robot
@@ -0,0 +1,64 @@
+*** Settings ***
+Documentation This suite is to test service user login functionality.
+... This test expects SERVICE_FILE_PATH, PRODUCTION_KEY_FILE_PATH and
+... SERVICE_USER_PASSWORD to be provided.
+...
+... Execution Method :
+... python -m robot -v OPENBMC_HOST:<hostname> -v SERVICE_FILE_PATH:<service file path>
+... -v PRODUCTION_KEY_FILE_PATH:<production key file path>
+... -v SERVICE_USER_PASSWORD:<service user password>
+... openpower/service_account/test_service_login.robot
+
+Resource ../../lib/connection_client.robot
+Resource ../../lib/openbmc_ffdc.robot
+Resource ../../lib/bmc_redfish_utils.robot
+
+Library SSHLibrary
+
+Suite Setup Suite Setup Execution
+Test Teardown FFDC On Test Case Fail
+
+
+*** Variables ***
+
+${acf_dir} /etc/acf
+
+*** Test Cases ***
+
+Verify Service User Login With Valid ACF file
+ [Documentation] Verify service user login with valid ACF file.
+ [Tags] Verify_Service_User_Login_With_Valid_ACF_file
+
+ Upload Valid ACF
+ Redfish.Login service ${SERVICE_USER_PASSWORD}
+
+
+Verify Service User Login Without ACF file
+ [Documentation] Verify service user login without ACF file.
+ [Tags] Verify_Service_User_Login_Without_ACF_file
+
+ Remove Existing ACF
+ Run Keyword And Expect Error InvalidCredentialsError*
+ ... Redfish.Login service ${SERVICE_USER_PASSWORD}
+
+
+*** Keywords ***
+
+Suite Setup Execution
+ [Documentation] Do suite setup tasks.
+
+ # Upload production key in BMC because it is not part of OpenBMC build yet.
+ scp.Put File ${PRODUCTION_KEY_FILE_PATH} ${acf_dir}
+
+
+Remove Existing ACF
+ [Documentation] Remove existing ACF.
+
+ BMC Execute Command rm -f ${acf_dir}/*.acf
+
+
+Upload Valid ACF
+ [Documentation] Upload valid ACF.
+
+ Run Keywords Open Connection for SCP
+ scp.Put File ${SERVICE_FILE_PATH} ${acf_dir}