test_ipmi_user_robot: skip instead of fail test for short pasword.
Skip 'Verify IPMI Root User Password Change' if len(OPENBMC_PASSWORD) < 8
Aspects:
- Graceful exit (skip instead of fail) for short OPENBMC_PASSWORD.
- Add comment to clarify reason: password < 8 chars cannot be set,
thus the restore password step in Teardown would fail.
- This affects "out-of-the-box" operation with default password 0penBmc.
- Evaluate precondition in Setup step. Skip if precondition violated.
- Make restoring pw in Teardown conditional on 'TEST STATUS' != 'SKIP'.
- For clarity, rename keyword: 'Set Default Password For IPMI Root User'
-> 'Restore Default Password For IPMI Root User'
Tested: operates as intended with both a 7-char pw and a 15-char pw.
Signed-off-by: Ruud A. Haring <ruud@us.ibm.com>
Change-Id: If3b67e9479824e5c6b6b95df366887e0af5a7cd3
diff --git a/ipmi/test_ipmi_user.robot b/ipmi/test_ipmi_user.robot
index 32f1db3..7d913e3 100644
--- a/ipmi/test_ipmi_user.robot
+++ b/ipmi/test_ipmi_user.robot
@@ -339,12 +339,15 @@
[Documentation] Change IPMI root user password and verify that
... root user is able to run IPMI command.
[Tags] Verify_IPMI_Root_User_Password_Change
+ [Setup] Skip if len( '${OPENBMC_PASSWORD}' ) < 8
+ ... msg= Do not run this test if len( OPENBMC_PASSWORD ) < 8
+ # Reason: if OPENBMC_PASSWORD is not at least 8 characters,
+ # it cannot be restored in the Teardown step.
[Teardown] Run Keywords FFDC On Test Case Fail AND
+ ... Run Keyword If "${TEST STATUS}" != "SKIP"
... Wait Until Keyword Succeeds 15 sec 5 sec
- ... Set Default Password For IPMI Root User
+ ... Restore Default Password For IPMI Root User
- # User input password should be minimum 8 characters long.
- Valid Length OPENBMC_PASSWORD min_length=8
# Set new password for root user.
Run IPMI Standard Command
... user set password ${root_userid} ${valid_password}
@@ -511,9 +514,9 @@
*** Keywords ***
-Set Default Password For IPMI Root User
- [Documentation] Set default password for IPMI root user (i.e. 0penBmc).
- # Set default password for root user.
+Restore Default Password For IPMI Root User
+ [Documentation] Restore default password for IPMI root user
+
${result}= Run External IPMI Standard Command
... user set password ${root_userid} ${OPENBMC_PASSWORD}
... P=${valid_password}