mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Christophe Sovant
04.14.2007 a659c05b345a2c83ddb87db2c8a2d7af2669b544
Fix ldapsearch testcases and clu test suite cleanup.
3 files deleted
2 files added
4 files modified
30183 ■■■■ changed files
opends/tests/functional-tests/shared/data/clu/data/clu_start.ldif 27243 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/clu.xml 92 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/cluSearch.xml 1141 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/clu_cleanup.xml 94 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/clu_ldapsearch_checkoptions.xml 1157 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/clu_setup.xml 178 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/clu_setup_sav.xml 142 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/clu/commands.xml 80 ●●●●● patch | view | raw | blame | history
opends/tests/functional-tests/testcases/runFuncTests.xml 56 ●●●● patch | view | raw | blame | history
opends/tests/functional-tests/shared/data/clu/data/clu_start.ldif
Diff too large
opends/tests/functional-tests/testcases/clu/clu.xml
New file
@@ -0,0 +1,92 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE stax SYSTEM "../../../shared/stax.dtd">
<!--
 ! CDDL HEADER START
 !
 ! The contents of this file are subject to the terms of the
 ! Common Development and Distribution License, Version 1.0 only
 ! (the "License").  You may not use this file except in compliance
 ! with the License.
 !
 ! You can obtain a copy of the license at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
 ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 ! See the License for the specific language governing permissions
 ! and limitations under the License.
 !
 ! When distributing Covered Code, exclude this CDDL HEADER in each
 ! file and exclude the License file at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 ! add the following below this CDDL HEADER, with the fields enclosed
 ! by brackets "[]" replaced with your own identifying information:
 !      Portions Copyright [yyyy] [name of copyright owner]
 !
 ! CDDL HEADER END
 !
 !      Portions Copyright 2007 Sun Microsystems, Inc.
! -->
<stax>
  <defaultcall function="main_clu"/>
  <function name="main_clu">
    <sequence>
      <block name="'clu'">
        <sequence>
          <!--- Test Group information
            #@TestGroupName          Clu tests
            #@TestGroupPurpose       Test the tools commands.
          -->
          <script>
            CurrentTestPath['group']='clu'
          </script>
          <call function="'testGroup_Preamble'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
                  file="'%s/testcases/clu/clu_setup.xml' % (TESTS_DIR)"/>
          <call function="'clu_setup'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
                  file="'%s/testcases/clu/clu_ldapsearch_checkoptions.xml' % (TESTS_DIR)"/>
          <call function="'clu_ldapsearch_checkoptions'"/>
          <!---<import machine="STAF_LOCAL_HOSTNAME"
                  file="'%s/testcases/clu/cluModify.xml' % (TESTS_DIR)"/>
          <call function="'main_cluModify'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
                  file="'%s/testcases/clu/cluCompare.xml' % (TESTS_DIR)"/>
          <call function="'main_cluCompare'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
                  file="'%s/testcases/clu/cluDelete.xml' % (TESTS_DIR)"/>
          <call function="'main_cluDelete'"/>-->
          <import machine="STAF_LOCAL_HOSTNAME"
                  file="'%s/testcases/clu/cluBase64.xml' % (TESTS_DIR)"/>
          <call function="'main_cluBase64'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
                  file="'%s/testcases/clu/cluStatus.xml' % (TESTS_DIR)"/>
          <call function="'main_cluStatus'"/>
          <import machine="STAF_LOCAL_HOSTNAME"
                  file="'%s/testcases/clu/clu_cleanup.xml' % (TESTS_DIR)"/>
          <call function="'clu_cleanup'"/>
          <call function="'testGroup_Postamble'"/>
        </sequence>
      </block>
    </sequence>
  </function>
</stax>
opends/tests/functional-tests/testcases/clu/cluSearch.xml
File was deleted
opends/tests/functional-tests/testcases/clu/clu_cleanup.xml
@@ -30,73 +30,73 @@
  <defaultcall function="clu_cleanup"/>
  <function name="clu_cleanup">
    <function-map-args>
      <function-arg-def name="stopDS" type="optional" default="True">
        <function-arg-description>
          Optional stop the Directory Server
        </function-arg-description>
        <function-arg-property name="type" value="boolean"/>
      </function-arg-def>
  </function-map-args>
    <function-description>
      Cleanup for the command line test suite
    </function-description>
    <sequence>
      <block name="'cleanup'">
        <sequence>
          <if expr="stopDS == True">
          <block name="'Block DS Process Stop'">
          <script>
            CurrentTestPath['group']='clu'
          </script>
          <!--- Stop DS -->
        <sequence>
          <block name="'Block DS Process Stop'">
            <sequence>
              <message>
                 'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
                'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
              <call function="'StopDsWithScript'">
                { 'location'  : STAF_REMOTE_HOSTNAME,
                  'dsHost'    : DIRECTORY_INSTANCE_HOST,
                  'dsPort'    : DIRECTORY_INSTANCE_PORT,
                  'dsBindDN'  : DIRECTORY_INSTANCE_DN,
                  'dsBindPwd' : DIRECTORY_INSTANCE_PSWD }
                {
                'location'  : STAF_REMOTE_HOSTNAME,
                'dsHost'    : DIRECTORY_INSTANCE_HOST,
                'dsPort'    : DIRECTORY_INSTANCE_PORT,
                'dsBindDN'  : DIRECTORY_INSTANCE_DN,
                'dsBindPwd' : DIRECTORY_INSTANCE_PSWD
                }
              </call>
            </sequence>
          </block>
          <!--- End Block DS Process Stop -->
          <!-- Remove  the topology created for the test suite -->
          <block name="'Block Remove DS Topology'">
            <sequence>
              <message>
                'Remove DS topology created for the Test Suite'
              </message>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
                {
                'returncode' : RC ,
                'result'     : STAXResult
                }
              </call>
        </sequence>
          <!--- End Block DS Process Stop -->
            </sequence>
          </block>
      </if>
          <!-- End Block Remove DS Topology-->
      <block name="'Block Remove DS Topology'">
      <!-- Remove  the topology created for the test suite -->
      <sequence>
              <message>
                 'Remove DS topology created for the Test Suite'
              </message>
        </sequence>
        <call function="'removeTopology'"/>
        <call function="'checkRC'">
                  { 'returncode' : RC ,
                    'result'     : STAXResult }
              </call>
      </sequence>
      <!-- End Block Remove DS Topology-->
      </block>
        </sequence>
      </block>
     </sequence>
    </sequence>
  </function>
opends/tests/functional-tests/testcases/clu/clu_ldapsearch_checkoptions.xml
New file
@@ -0,0 +1,1157 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE stax SYSTEM "../../../shared/stax.dtd">
<!--
 ! CDDL HEADER START
 !
 ! The contents of this file are subject to the terms of the
 ! Common Development and Distribution License, Version 1.0 only
 ! (the "License").  You may not use this file except in compliance
 ! with the License.
 !
 ! You can obtain a copy of the license at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
 ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 ! See the License for the specific language governing permissions
 ! and limitations under the License.
 !
 ! When distributing Covered Code, exclude this CDDL HEADER in each
 ! file and exclude the License file at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 ! add the following below this CDDL HEADER, with the fields enclosed
 ! by brackets "[]" replaced with your own identifying information:
 !      Portions Copyright [yyyy] [name of copyright owner]
 !
 ! CDDL HEADER END
 !
 !      Portions Copyright 2007 Sun Microsystems, Inc.
 ! -->
<stax>
  <defaultcall function="clu_ldapsearch_checkoptions"/>
  <function name="clu_ldapsearch_checkoptions">
    <sequence>
      <block name="'clu_ldapsearch_checkoptions'">
        <sequence>
          <!--- Test Suite information
            #@TestSuiteName       ldapsearch check options tests
            #@TestSuitePurpose    Test the ldapsearch command with
                                  common options and input/output options.
            #@TestSuiteGroup      ldapsearch check options tests
            #@TestScript          clu_ldapsearch_checkoptions.xml
          -->
          <script>
            if not CurrentTestPath.has_key('group'):
              CurrentTestPath['group']='clu'
            CurrentTestPath['suite']=STAXCurrentBlock
          </script>
          <call function="'testSuite_Preamble'"/>
          <!--- Define default value for basedn and dsfilter -->
          <script>
            basedn = 'ou=ldapsearch,o=clu tests,dc=example,dc=com'
            dsfilter = 'uid=user.10*'
          </script>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: correct options
            #@TestIssue           none
            #@TestPurpose         Test ldapsearch with correct options.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with correct options.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0
          -->
          <testcase name="getTestCaseName('ldapsearch: correct options')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: correct options'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: empty hostname
            #@TestIssue           2619
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with an empty hostname.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 89
          -->
          <testcase name="getTestCaseName('ldapsearch: empty hostname')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: empty hostname'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : ' ' ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 89
                }
              </call>
              <script>
                knownIssue(2619)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: invalid hostname
            #@TestIssue           none
            #@TestPurpose         Verify a connection error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with an invalid hostname.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 91.
          -->
          <testcase name="getTestCaseName('ldapsearch: invalid hostname')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: invalid hostname'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : 'bad_host' ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 91
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: no port and no basedn
            #@TestIssue           2619
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with no port and no basedn.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 89.
          -->
          <testcase name="getTestCaseName('ldapsearch: no port and no basedn')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: no port and no basedn'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 89
                }
              </call>
              <script>
                knownIssue(2619)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: invalid port number and no basedn
            #@TestIssue           2619
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with invalid port number
                                  and no basedn used.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 89.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: invalid port number and no basedn')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: invalid port number and no basedn'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : '-1' ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 89
                }
              </call>
              <script>
                knownIssue(2619)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: invalid binddn
            #@TestIssue           none
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with an invalid binddn.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 49.
          -->
          <testcase name="getTestCaseName('ldapsearch: invalid binddn')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: invalid binddn'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : 'cn=bad dn' ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 49
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: no password
            #@TestIssue           2624
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch without a password.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 48.
          -->
          <testcase name="getTestCaseName('ldapsearch: no password provided')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: no password provided'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 48
                }
              </call>
              <script>
                knownIssue(2624)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: invalid password
            #@TestIssue           none
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with an invalid password.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 49.
          -->
          <testcase name="getTestCaseName('ldapsearch: invalid password')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: invalid password'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : 'bad_password' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 49
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: scope with no option-argument
            #@TestIssue           2619
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with a scope and no value.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 89.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: scope with no option-argument')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: scope with no option-argument'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsScope'          : ' ' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 89
                }
              </call>
              <script>
                knownIssue(2619)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: invalid scope
            #@TestIssue           2619
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with an invalid scope.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 89.
          -->
          <testcase name="getTestCaseName('ldapsearch: invalid scope')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: invalid scope'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsScope'          : 'bad_scope' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 89
                }
              </call>
              <script>
                knownIssue(2619)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: empty basedn
            #@TestIssue           2619
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with an empty basedn.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 89.
          -->
          <testcase name="getTestCaseName('ldapsearch: empty basedn')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: empty basedn'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : ' ' ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 89
                }
              </call>
              <script>
                knownIssue(2619)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: invalid basedn
            #@TestIssue           none
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with an invalid basedn.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 32.
          -->
          <testcase name="getTestCaseName('ldapsearch: invalid basedn')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: invalid basedn'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : 'o=bad dn' ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 32
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: no filter
            #@TestIssue           2619
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch without a filter.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 89.
          -->
          <testcase name="getTestCaseName('ldapsearch: no filter')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: no filter'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'         : basedn ,
                'expectedRC'       : 89
                }
              </call>
              <script>
                knownIssue(2619)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: dry run option
            #@TestIssue           none
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with dry run option.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName('ldapsearch: dry run option')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: dry run option'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsDryRun'         : 'True' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: verbose option
            #@TestIssue           none
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the verbose option.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName('ldapsearch: verbose option')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: verbose option'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsVerbose'        : 'True' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: timelimit of 20 seconds
            #@TestIssue           none
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with timelimit of 20 seconds option.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: timelimit of 20 seconds')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: timelimit of 20 seconds'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsTimeLimit'      : '20' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : 'mobile=*[0-9][ ][0-9]+[ ]*' ,
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: timelimit of 1 seconds
            #@TestIssue           none
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with timelimit of 1 second.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 3.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: timelimit of 1 seconds')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: timelimit of 1 seconds'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsTimeLimit'      : '1' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : 'mobile=*[0-9][ ][0-9]+[ ]*' ,
                'expectedRC'       : 3
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: sizelimit of 100 entries
            #@TestIssue           none
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with sizelimit option.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: sizelimit of 100 entries')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: sizelimit of 100 entries'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsSizeLimit'      : '100' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: sizelimit of 1 entries
            #@TestIssue           none
            #@TestPurpose         Verify a parameter error doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the sizelimit option.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 4.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: sizelimit of 1 entries')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: sizelimit of 1 entries'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsSizeLimit'      : '1' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter ,
                'expectedRC'       : 4
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: help option
            #@TestIssue           2619
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the help option.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName('ldapsearch: help option')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: help option'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsHelp'           : 'True' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter
                }
              </call>
              <script>
                knownIssue(2619)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: don't wrap option
            #@TestIssue           none
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the do do not wrap
                                  long lines option.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName(
          'ldapsearch: do not wrap long lines option')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: do not wrap long lines option'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsDontWrap'       : 'True' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: attribute value only option
            #@TestIssue           none
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the attribute value
                                  only option.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: attribute value only option')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: attribute value only option'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsTypesOnly'      : 'True' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: sort order option of uid
            #@TestIssue           none
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the a sort order of uid.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: sort order option of uid')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: sort order option of uid'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsSortOrder'      : 'uid' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: sort order option of bad
            #@TestIssue           2623
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the a sort order of bad.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: sort order option of bad')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: sort order option of bad '
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'   : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsSortOrder'      : 'bad_sort' ,
                'dsBaseDN'         : basedn ,
                'dsFilter'         : dsfilter
                }
              </call>
              <script>
                knownIssue(2623)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: dereference policy of always
            #@TestIssue           none
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the a dereference
                                  policy of always.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 0.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: dereference policy of always')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: dereference policy of always'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'      : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'      : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'        : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'      : DIRECTORY_INSTANCE_PSWD ,
                'dsDereferencePolicy' : 'always' ,
                'dsBaseDN'            : basedn ,
                'dsFilter'            : dsfilter
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: dereference policy of bad
            #@TestIssue           2619
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the a dereference
                                  policy of bad.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 89.
          -->
          <testcase name="getTestCaseName
          ('ldapsearch: dereference policy of bad')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: dereference policy of bad'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'      : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'      : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'        : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'      : DIRECTORY_INSTANCE_PSWD ,
                'dsDereferencePolicy' : 'bad_ref' ,
                'dsBaseDN'            : basedn ,
                'dsFilter'            : dsfilter ,
                'expectedRC'          : 89
                }
              </call>
              <script>
                knownIssue(2619)
              </script>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <!--- Test Case information
            #@TestMarker          ldapsearch check options tests
            #@TestName            ldapsearch: invalid basedn
            #@TestIssue           none
            #@TestPurpose         Verify a parameter doing an ldapsearch.
            #@TestPreamble        none
            #@TestStep            Do an ldapsearch with the a bad base dn.
            #@TestPostamble       none
            #@TestResult          Success if ldapsearch returns 32.
          -->
          <testcase name="getTestCaseName('ldapsearch: invalid basedn')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <message>
                'ldapsearch: invalid basedn'
              </message>
              <call function="'ldapSearchWithScript'">
                {
                'dsInstanceHost'      : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'      : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'        : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'      : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'            : 'cn=bad,cn=config' ,
                'dsFilter'            : 'objectclass=*' ,
                'expectedRC'          : 32
                }
              </call>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <call function="'testSuite_Postamble'"/>
        </sequence>
      </block>
    </sequence>
  </function>
</stax>
opends/tests/functional-tests/testcases/clu/clu_setup.xml
@@ -1,77 +1,98 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE stax SYSTEM "../../../shared/stax.dtd">
<!--
  ! CDDL HEADER START
  !
  ! The contents of this file are subject to the terms of the
  ! Common Development and Distribution License, Version 1.0 only
  ! (the "License").  You may not use this file except in compliance
  ! with the License.
  !
  ! You can obtain a copy of the license at
  ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
  ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
  ! See the License for the specific language governing permissions
  ! and limitations under the License.
  !
  ! When distributing Covered Code, include this CDDL HEADER in each
  ! file and include the License file at
  ! trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
  ! add the following below this CDDL HEADER, with the fields enclosed
  ! by brackets "[]" replaced with your own identifying information:
  !      Portions Copyright [yyyy] [name of copyright owner]
  !
  ! CDDL HEADER END
  !
  !      Portions Copyright 2007 Sun Microsystems, Inc.
  ! -->
 ! CDDL HEADER START
 !
 ! The contents of this file are subject to the terms of the
 ! Common Development and Distribution License, Version 1.0 only
 ! (the "License").  You may not use this file except in compliance
 ! with the License.
 !
 ! You can obtain a copy of the license at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
 ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 ! See the License for the specific language governing permissions
 ! and limitations under the License.
 !
 ! When distributing Covered Code, include this CDDL HEADER in each
 ! file and include the License file at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 ! add the following below this CDDL HEADER, with the fields enclosed
 ! by brackets "[]" replaced with your own identifying information:
 !      Portions Copyright [yyyy] [name of copyright owner]
 !
 ! CDDL HEADER END
 !
 !      Portions Copyright 2006-2007 Sun Microsystems, Inc.
 ! -->
<stax>
  <defaultcall function="clu_setup" />
  <function name="clu_setup">
    <function-description>
      Setup the command line test suite
      Setup for the command line test suite
    </function-description>
    <function-map-args>
      <function-arg-def name="startDS" type="optional" default="True">
        <function-arg-description>
          Start the Directory Server
        </function-arg-description>
      </function-arg-def>
      <function-arg-def name="loadBackend" type="optional" default="True">
        <function-arg-description>
          Load the backend with user data
        </function-arg-description>
      </function-arg-def>
    </function-map-args>
    <sequence>
      <block name="'setup'">
        <sequence>
          <script>
            CurrentTestPath['group']='clu'
          </script>
          <!-- Create the topology necessary to the test group/suite -->
          <sequence>
          <block name="'Block Create DS Topology'">
            <message>
              'Create DS topology as described in config.py'
            </message>
            <sequence>
            <call function="'createTopology'">
              { 'initialiseInstance' : False }
            </call>
              <message>
                'Create DS topology as described in config.py'
              </message>
            <call function="'checkRC'">
              { 'returncode' : RC , 'result' : STAXResult }
            </call>
              <call function="'createTopology'">
                { 'initialiseInstance' : False }
              </call>
          </sequence>
              <call function="'checkRC'">
                {
                'returncode' : RC ,
                'result'     : STAXResult
                }
              </call>
          <if expr="startDS == True">
            <!--- Start DS -->
            </sequence>
          </block>
          <!--- End Block Create DS Topology -->
          <!-- Load the data needed by the test suite -->
          <block name="'Block DS Load Data'">
            <sequence>
              <message>
                'setup: adding Initial Entries'
              </message>
              <call function="'importLdif'">
                {
                'ldifFile'    : '%s/clu/data/clu_start.ldif' % logsRemoteDataDir
                }
              </call>
            </sequence>
          </block>
          <!--- End Block DS Load Data -->
          <!--- Start DS -->
          <block name="'Block DS Process Active'">
            <sequence>
              <message>
@@ -83,58 +104,21 @@
                { 'location' : STAF_REMOTE_HOSTNAME }
              </call>
              <call function="'checkRC'">
                { 'returncode' : RC ,
                  'result'     : STAXResult }
              </call>
              <!--- Check that DS started -->
              <call function="'isAlive'">
                { 'noOfLoops'        : 5 ,
                  'noOfMilliSeconds' : 2000 }
              </call>
            </sequence>
          </if>
          <if expr="loadBackend == True">
            <!-- Load the data needed by the test suite -->
            <sequence>
              <message>
                'Add many entries needed for Testcase 18 in cluSearch tests'
              </message>
              <call function="'addEntry'">
                { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST ,
                  'dsInstancePort' : DIRECTORY_INSTANCE_PORT ,
                  'dsInstanceDn'   : DIRECTORY_INSTANCE_DN ,
                  'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD ,
                  'entryToBeAdded' : '%s/clu/data/clu_start.ldif' % logsRemoteDataDir }
              </call>
              <message>'Add entries for cluSearch Tests'</message>
              <call function="'addEntry'">
                { 'dsInstanceHost' : DIRECTORY_INSTANCE_HOST ,
                'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'entryToBeAdded'   : '%s/clu/data/ldif_mod.ldif' % logsRemoteDataDir }
              </call>
              <call function="'checkRC'">
                { 'returncode' : RC ,
                  'result'     : STAXResult }
                {
                'noOfLoops'        : 5 ,
                'noOfMilliSeconds' : 2000
                }
              </call>
            </sequence>
          </if>
          </block>
          <!--- End Block DS Process Active -->
        </sequence>
      </block>
    </sequence>
opends/tests/functional-tests/testcases/clu/clu_setup_sav.xml
File was deleted
opends/tests/functional-tests/testcases/clu/commands.xml
File was deleted
opends/tests/functional-tests/testcases/runFuncTests.xml
@@ -58,17 +58,17 @@
      <!--
      add keyword 'main_dsconfig' in run-custom-suites.dat file to run this specific testsuite or run CLI : build run-my-tests
      -->
      <import machine="STAF_LOCAL_HOSTNAME"
              file="'%s/testcases/backends/backends.xml' % TESTS_DIR" />
      <!--
      add keyword 'main_backends' in run-custom-suites.dat file to run this specific testsuite or run CLI : build run-my-tests
      -->
      <import machine="STAF_LOCAL_HOSTNAME"
              file="'%s/testcases/clu/commands.xml' % TESTS_DIR" />
              file="'%s/testcases/clu/clu.xml' % TESTS_DIR" />
      <!--
      add keyword 'main_commands' in run-custom-suites.dat file to run this specific testsuite or run CLI : build run-my-tests
      add keyword 'main_clu' in run-custom-suites.dat file to run this specific testsuite or run CLI : build run-my-tests
      -->
      <import machine="STAF_LOCAL_HOSTNAME"
@@ -133,30 +133,30 @@
        # this function return a well-formatted testcase name
        def getTestCaseName(name):
          return '%s: %s: %s' % (CurrentTestPath['group'],CurrentTestPath['suite'],name)
        # this functions adds a known issue to a testcase's known issues list
        issuesList=[]
        def knownIssue(issue):
          issuesList.append(issue)
        class functionToRun:
          def __init__(self, name):
            self.name = name
          def getName(self):
            return self.name
        testlog=open('%s/tests-log.xml' % logsTestsDir,'w')
        testlog.write('&lt;qa&gt;\n')
        testlog.write('  &lt;functional-tests&gt;\n')
        testlog.write('    &lt;results&gt;\n')
        testlog.close()
        suitesFileName='%s/testcases/run-custom-suites.dat' % TESTS_DIR
        if not os.path.exists(suitesFileName):
          suitesFileName='%s/testcases/run-default-suites.dat' % TESTS_DIR
        f = open(suitesFileName, 'r')
        functionsToRun = []
        for line in f.readlines():
@@ -169,7 +169,7 @@
          <call function="function.getName()" />
        </sequence>
      </iterate>
      <!-- in this section we'll compute the coverage for all the tests
           if coverage is turned on
           so far I could only get through this on either machines with a lot
@@ -195,10 +195,10 @@
            from javax.xml.transform.stream import StreamResult
            from javax.xml.parsers import DocumentBuilderFactory
            from org.w3c.dom import *
            factory = DocumentBuilderFactory.newInstance()
            factory = DocumentBuilderFactory.newInstance()
            builder = factory.newDocumentBuilder()
            input = FileInputStream("%s/coverage/coverage.xml" % TMPDIR)
            document = builder.parse(input)
            dom = document.getDocumentElement()
@@ -247,9 +247,9 @@
          STAFResult='{}'
        </script>
      </if>
      <!-- Build the Servers Information Dictionary -->
      <script>
      <script>
        ServersInfoDict=eval(STAFResult)
        ServerVersion='unknown'
@@ -262,22 +262,22 @@
        ServerSystemOS='unknown'
        ServerSystemName='unknown'
        ServerSvnRevision='unknown'
        if ServersInfoDict.has_key('%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)):
          ServerInfoDict=ServersInfoDict['%s/%s' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)]
          ServerInfoKey='server version'
          if ServerInfoDict.has_key(ServerInfoKey):
            ServerVersion=ServerInfoDict[ServerInfoKey]
          ServerInfoKey='server buildid'
          if ServerInfoDict.has_key(ServerInfoKey):
            ServerBuildId=ServerInfoDict[ServerInfoKey]
          ServerInfoKey='java version'
          if ServerInfoDict.has_key(ServerInfoKey):
            ServerJavaVersion=ServerInfoDict[ServerInfoKey]
          ServerInfoKey='java vendor'
          if ServerInfoDict.has_key(ServerInfoKey):
            ServerJavaVendor=ServerInfoDict[ServerInfoKey]
@@ -305,10 +305,10 @@
          ServerInfoKey='svn revision'
          if ServerInfoDict.has_key(ServerInfoKey):
            ServerSvnRevision=ServerInfoDict[ServerInfoKey]
        else:
          ServerInfoDict='No key found (%s/%s)' % (DIRECTORY_INSTANCE_DIR,OPENDSNAME)
        # Platform and JVM can be overridden from config file
        try:
          if TEST_OS_STRING:
@@ -332,13 +332,13 @@
        testlog.write('    &lt;identification&gt;\n')
        testlog.write('      &lt;version&gt;\n')
        testlog.write('        %s\n' % ServerVersion)
        testlog.write('      &lt;/version&gt;\n')
        testlog.write('      &lt;/version&gt;\n')
        testlog.write('      &lt;buildid&gt;\n')
        testlog.write('        %s\n' % ServerBuildId)
        testlog.write('      &lt;/buildid&gt;\n')
        testlog.write('      &lt;revision&gt;\n')
        testlog.write('        %s\n' % ServerSvnRevision)
        testlog.write('      &lt;/revision&gt;\n')
        testlog.write('      &lt;/revision&gt;\n')
        testlog.write('      &lt;platform&gt;\n')
        testlog.write('        %s\n' % ServerSystemOS)
        testlog.write('      &lt;/platform&gt;\n')
@@ -353,10 +353,10 @@
        testlog.write('      &lt;/jvm-label&gt;\n')
        testlog.write('      &lt;jvm-vendor&gt;\n')
        testlog.write('        %s\n' % ServerJVMVendor)
        testlog.write('      &lt;/jvm-vendor&gt;\n')
        testlog.write('      &lt;/jvm-vendor&gt;\n')
        testlog.write('      &lt;tests-dir&gt;\n')
        testlog.write('        %s\n' % logsDir)
        testlog.write('      &lt;/tests-dir&gt;\n')
        testlog.write('      &lt;/tests-dir&gt;\n')
        testlog.write('    &lt;/identification&gt;\n')
        testlog.write('  &lt;/functional-tests&gt;\n')
        testlog.write('&lt;/qa&gt;\n')