From 2a608052e1339ffca81920e6f1921c567bd0aad9 Mon Sep 17 00:00:00 2001
From: mkeyes <mkeyes@localhost>
Date: Fri, 24 Aug 2007 19:15:37 +0000
Subject: [PATCH] Added functional test cases for adding a new password storage scheme.
---
opendj-sdk/opends/tests/functional-tests/testcases/security/pwd_storage/security_multiple_schemes.xml | 156 ++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 146 insertions(+), 10 deletions(-)
diff --git a/opendj-sdk/opends/tests/functional-tests/testcases/security/pwd_storage/security_multiple_schemes.xml b/opendj-sdk/opends/tests/functional-tests/testcases/security/pwd_storage/security_multiple_schemes.xml
index bd932c3..6699a7f 100755
--- a/opendj-sdk/opends/tests/functional-tests/testcases/security/pwd_storage/security_multiple_schemes.xml
+++ b/opendj-sdk/opends/tests/functional-tests/testcases/security/pwd_storage/security_multiple_schemes.xml
@@ -50,14 +50,18 @@
#@TestPurpose Add BASE64 password scheme
#@TestPreamble none
#@TestStep Admin add BASE64.
+ #@TestStep Admin deletes SHA-1.
+ #@TestStep Admin creates new SHA-1.
+ #@TestStep Admin adds new SHA-1 to default storage scheme of the Default Password Policy.
#@TestPostamble none
#@TestResult Success if OpenDS returns 0
+ for all operations.
-->
<testcase name="getTestCaseName('Multiple Schemes - Preamble')">
<sequence>
<call function="'testCase_Preamble'"/>
<message>
- 'Security: Multiple Pwd Schemes: Preamble - Admin Adding BASE64 Storage Scheme'
+ 'Security: Multiple Pwd Schemes: Preamble - Admin adding BASE64 storage scheme'
</message>
<call function="'modifyPwdPolicy'">
@@ -71,6 +75,52 @@
'modifyType' : 'add' }
</call>
+ <message>
+ 'Security: Multiple Pwd Schemes: Preamble - Admin deleting SHA-1 storage scheme'
+ </message>
+
+ <call function="'dsconfig'">
+ { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST,
+ 'dsInstancePort' : DIRECTORY_INSTANCE_PORT ,
+ 'dsInstanceDn' : DIRECTORY_INSTANCE_DN ,
+ 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD ,
+ 'subcommand' : 'delete-password-storage-scheme' ,
+ 'objectType' : 'scheme-name' ,
+ 'objectName' : 'SHA-1',
+ 'expectedRC' : 0 }
+ </call>
+
+ <message>
+ 'Security: Multiple Pwd Schemes: Preamble - Admin creating new storage scheme'
+ </message>
+
+ <call function="'dsconfig'">
+ { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST,
+ 'dsInstancePort' : DIRECTORY_INSTANCE_PORT ,
+ 'dsInstanceDn' : DIRECTORY_INSTANCE_DN ,
+ 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD ,
+ 'subcommand' : 'create-password-storage-scheme' ,
+ 'objectType' : 'scheme-name' ,
+ 'objectName' : 'SHA-1',
+ 'optionsString' : '--type generic --set enabled:true --set scheme-class:org.opends.server.extensions.SHA1PasswordStorageScheme ',
+ 'expectedRC' : 0 }
+ </call>
+
+ <message>
+ 'Security: Multiple Pwd Schemes: Preamble - Admin adding new storage scheme'
+ </message>
+
+ <call function="'modifyPwdPolicy'">
+ { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST ,
+ 'dsInstancePort' : DIRECTORY_INSTANCE_PORT ,
+ 'dsInstanceDn' : DIRECTORY_INSTANCE_DN ,
+ 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD ,
+ 'propertyName' : 'Default Password Policy' ,
+ 'attributeName' : 'default-password-storage-scheme' ,
+ 'attributeValue' : 'SHA-1' ,
+ 'modifyType' : 'add' }
+ </call>
+
<call function="'testCase_Postamble'"/>
</sequence>
@@ -168,6 +218,52 @@
</sequence>
</testcase>
+ <!--- Test Case : Check for Multi-value for Pwd Schemes - BASE64-->
+ <!---
+ Place test-specific test information here.
+ The tag, TestMarker, must be the same as the tag, TestSuiteName.
+ #@TestMarker Multiple Schemes
+ #@TestName Check for SHA-1 Password Scheme
+ #@TestIssue 322
+ #@TestPurpose Test for the SHA-1 scheme in the password policy
+ #@TestPreamble none
+ #@TestStep Admin retrieve the value for
+ ds-cfg-default-password-storage-scheme.
+ #@TestPostamble none
+ #@TestResult Success if the string, "SHA-1",
+ is part of the return string.
+ -->
+ <testcase name="getTestCaseName('Multiple Schemes - Check Pwd Schemes - SHA-1')">
+ <sequence>
+ <call function="'testCase_Preamble'"/>
+ <message>
+ 'Security: Multiple Pwd Schemes: Checking for Password Schemes - SHA-1'
+ </message>
+
+ <call function="'SearchObject'">
+ { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST ,
+ 'dsInstancePort' : DIRECTORY_INSTANCE_PORT ,
+ 'dsInstanceDn' : DIRECTORY_INSTANCE_DN ,
+ 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD ,
+ 'dsBaseDN' : 'cn=Default Password Policy,cn=Password Policies,cn=config' ,
+ 'dsFilter' : 'objectclass=*' ,
+ 'attributes' : 'ds-cfg-default-password-storage-scheme' }
+ </call>
+
+ <script>
+ returnString = STAXResult[0][1]
+ </script>
+
+ <call function="'checktestString'">
+ { 'returnString' : returnString ,
+ 'expectedString' : 'SHA-1' }
+ </call>
+
+ <call function="'testCase_Postamble'"/>
+
+ </sequence>
+ </testcase>
+
<!--- Test Case : User Change Password Multiple Schemes-->
<!---
Place test-specific test information here.
@@ -181,12 +277,10 @@
#@TestStep User binds with new password.
#@TestStep Admin retrieves userpassword from user entry and
checks for the prefix string {SSHA}.
- #@TestStep Admin retrieves userpassword from user entry and
- checks for the prefix string {BASE64}.
#@TestPostamble none
#@TestResult Success if OpenDS returns 0
and the user password is stored in both
- SSHA and BASE64 schemes.
+ SSHA scheme.
-->
<testcase name="getTestCaseName('Multiple Schemes - Pwd Change')">
<sequence>
@@ -257,16 +351,12 @@
#@TestIssue 322
#@TestPurpose Test that a user's password is stored in the new schemes.
#@TestPreamble none
- #@TestStep User changes his password.
- #@TestStep User binds with new password.
- #@TestStep Admin retrieves userpassword from user entry and
- checks for the prefix string {SSHA}.
#@TestStep Admin retrieves userpassword from user entry and
checks for the prefix string {BASE64}.
#@TestPostamble none
#@TestResult Success if OpenDS returns 0
- and the user password is stored in both
- SSHA and BASE64 schemes.
+ and the user password is stored in
+ BASE64 scheme.
-->
<testcase name="getTestCaseName('Multiple Schemes - Check for Second Scheme On Pwd Change')">
<sequence>
@@ -299,6 +389,52 @@
</sequence>
</testcase>
+ <!---
+ Place test-specific test information here.
+ The tag, TestMarker, must be the same as the tag, TestSuiteName.
+ #@TestMarker Multiple Schemes
+ #@TestName User Password Change
+ #@TestIssue 322
+ #@TestPurpose Test that a user's password is stored in the new schemes.
+ #@TestPreamble none
+ #@TestStep Admin retrieves userpassword from user entry and
+ checks for the prefix string {SHA-1}.
+ #@TestPostamble none
+ #@TestResult Success if OpenDS returns 0
+ and the user password is stored in
+ SHA-1 scheme.
+ -->
+ <testcase name="getTestCaseName('Multiple Schemes - Check for New Scheme On Pwd Change')">
+ <sequence>
+ <call function="'testCase_Preamble'"/>
+ <message>
+ 'Security: Multiple Pwd Schemes: Checking for New Scheme On New Password'
+ </message>
+
+ <call function="'SearchObject'">
+ { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST ,
+ 'dsInstancePort' : DIRECTORY_INSTANCE_PORT ,
+ 'dsInstanceDn' : DIRECTORY_INSTANCE_DN ,
+ 'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD ,
+ 'dsBaseDN' : 'uid=bhall,ou=people,ou=password tests,o=Pwd Storage Tests,dc=example,dc=com' ,
+ 'dsFilter' : 'objectclass=*' ,
+ 'attributes' : 'userpassword' }
+ </call>
+
+ <script>
+ returnString = STAXResult[0][1]
+ </script>
+
+ <call function="'checktestString'">
+ { 'returnString' : returnString ,
+ 'expectedString' : '{SHA-1}' }
+ </call>
+
+ <call function="'testCase_Postamble'"/>
+
+ </sequence>
+ </testcase>
+
<!--- Test Case : User Improperly Add a Password-->
<!---
Place test-specific test information here.
--
Gitblit v1.10.0