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

gary_williams
09.39.2008 4cdb29a91e6cb2c6820d8474fd2fdcb6b1f69da8
fix tasks test suite, add verification to schema tests
7 files modified
373 ■■■■■ changed files
opends/tests/staf-tests/functional-tests/testcases/schema/rfc/schema_rfc.xml 16 ●●●●● patch | view | raw | blame | history
opends/tests/staf-tests/functional-tests/testcases/schema/schema.xml 18 ●●●●● patch | view | raw | blame | history
opends/tests/staf-tests/functional-tests/testcases/schema/solaris/schema_solaris.xml 7 ●●●● patch | view | raw | blame | history
opends/tests/staf-tests/functional-tests/testcases/schema/solaris/schema_solaris_tests.xml 88 ●●●● patch | view | raw | blame | history
opends/tests/staf-tests/functional-tests/testcases/tasks/cleanup.xml 85 ●●●●● patch | view | raw | blame | history
opends/tests/staf-tests/functional-tests/testcases/tasks/export-ldif.xml 43 ●●●●● patch | view | raw | blame | history
opends/tests/staf-tests/functional-tests/testcases/tasks/setup.xml 116 ●●●●● patch | view | raw | blame | history
opends/tests/staf-tests/functional-tests/testcases/schema/rfc/schema_rfc.xml
@@ -74,22 +74,6 @@
                <!-- Specific to rfc tests -->
                <script>
                  __baseDN='o=rfc tests, dc=example,%s' % server.suffix
                  def parse_stax_result(result):
                    if result.__class__ is org.python.core.PyList:
                      _unwrapResult=result[1][0]
                      try:
                        _functionString=_unwrapResult[1]
                      except AttributeError:
                        _functionString='Unable to parse result.'
                    elif result.__class__ is org.python.core.PyString:
                      _functionString=STAXResult
                    else:
                      _functionString='Unable to parse result.'
                    return _functionString
                </script>
                                                    
                <!-- List of Test Cases -->
opends/tests/staf-tests/functional-tests/testcases/schema/schema.xml
@@ -65,7 +65,7 @@
              suiteList.append('dynamic')
              suiteList.append('solaris')
            </script>
            <!-- Data global to this test group  -->
            <!-- LDAP Server Object -->
            <script>
@@ -77,6 +77,22 @@
              server.dn         = DIRECTORY_INSTANCE_DN
              server.password   = DIRECTORY_INSTANCE_PSWD
              server.suffix     = DIRECTORY_INSTANCE_SFX
              def parse_stax_result(result):
                if result.__class__ is org.python.core.PyList:
                  _unwrapResult=result[1][0]
                  try:
                    _functionString=_unwrapResult[1]
                  except AttributeError:
                    _functionString='Unable to parse result.'
                elif result.__class__ is org.python.core.PyString:
                  _functionString=STAXResult
                else:
                  _functionString='Unable to parse result.'
                return _functionString
            </script>
            <!-- Run the test suites -->
opends/tests/staf-tests/functional-tests/testcases/schema/solaris/schema_solaris.xml
@@ -70,6 +70,11 @@
                <!-- Test Suite Setup -->
                <call function="'%s_setup' % __group"/>
                <!-- Specific to solaris schema tests -->
                <script>
                  __baseDN='o=Solaris schema tests, dc=example,%s' % server.suffix
                </script>
                                                    
                <!-- List of Test Cases -->
                <script>
@@ -106,7 +111,7 @@
          <finally>
            <sequence>
              <!-- Test Suite Cleanup -->
              <message>'Finally: Example Cleanup.'</message>
              <message>'Finally: Solaris Schema Cleanup.'</message>
              <call function="'%s_cleanup' % __group"/>
              <call function="'testSuite_Postamble'"/>
            </sequence>
opends/tests/staf-tests/functional-tests/testcases/schema/solaris/schema_solaris_tests.xml
@@ -26,7 +26,7 @@
 !      Copyright 2008 Sun Microsystems, Inc.
 ! -->
<stax>
  <!-- Definition of Test Cases -->             
  <!--- Test Case : Schema: Add Solaris Schema Entries -->          
@@ -67,14 +67,49 @@
              }
            </call>
            <!-- TODO: Need to verify that the added entry is working as specified -->
            <call function="'runFunction'">
              { 'functionName'      : 'ldapSearchWithScript'                       ,
                'functionMessage'   : 'Search for the entry just added and return rfc822mailMember.' ,
                'functionException' : 'LDAP.SearchException'               ,
                'functionArguments' : { 'dsInstanceHost'   : server.host ,
                                        'dsInstancePort'   : server.port ,
                                        'dsInstanceDn'     : server.dn ,
                                        'dsInstancePswd'   : server.password ,
                                        'dsBaseDN'         : __baseDN ,
                                        'dsFilter'         : 'objectclass=*' ,
                                        'dsAttributes'     : 'rfc822mailMember' }
              }
            </call>
            <script>
              _functionString=parse_stax_result(STAXResult)
            </script>
            <call function="'runFunction'">
             { 'functionName'      : 'checktestString' ,
               'functionMessage'   : 'Check that the rfc822mailMember attribute is returned.' ,
               'functionException' : 'Utils.CheckStringException' ,
               'functionArguments' : { 'expectedString' : 'rfc822mailMember: nisMailAlias@sun.com' ,
                                       'returnString'   : _functionString }
             }
            </call>
          </sequence>
          <catch exception="'STAXException.LDAP.ModifyException'" typevar="eType" var="eInfo">
          <catch exception="'STAXException.LDAP.AddException'" typevar="eType" var="eInfo">
            <message log="1" level="'fatal'">
              '%s: LDAPModify failed. eInfo(%s)' % (eType,eInfo)
              '%s: LDAPAdd failed. eInfo(%s)' % (eType,eInfo)
            </message>
          </catch>
          <catch exception="'STAXException.LDAP.SearchException'" typevar="eType" var="eInfo">
            <message log="1" level="'fatal'">
              '%s: LDAPSearch failed. eInfo(%s)' % (eType,eInfo)
            </message>
          </catch>
          <catch exception="'STAXException.Utils.CheckStringException'" typevar="eType" var="eInfo">
            <message log="1" level="'fatal'">
              '%s: UtilsCheck failed. eInfo(%s)' % (eType,eInfo)
            </message>
          </catch>
          <finally>
            <call function="'testCase_Postamble'"/>
          </finally>
@@ -121,12 +156,47 @@
              }
            </call>
            <!-- TODO: Need to verify that the added entry is working as specified -->
            <call function="'runFunction'">
              { 'functionName'      : 'ldapSearchWithScript'                       ,
                'functionMessage'   : 'Search for the entry just added and return nisDomain.' ,
                'functionException' : 'LDAP.SearchException'               ,
                'functionArguments' : { 'dsInstanceHost'   : server.host ,
                                        'dsInstancePort'   : server.port ,
                                        'dsInstanceDn'     : server.dn ,
                                        'dsInstancePswd'   : server.password ,
                                        'dsBaseDN'         : __baseDN ,
                                        'dsFilter'         : 'objectclass=*' ,
                                        'dsAttributes'     : 'nisDomain' }
              }
            </call>
           <script>
              _functionString=parse_stax_result(STAXResult)
           </script>
            <call function="'runFunction'">
             { 'functionName'      : 'checktestString' ,
               'functionMessage'   : 'Check that the nisDomain attribute is returned.' ,
               'functionException' : 'Utils.CheckStringException' ,
               'functionArguments' : { 'expectedString' : 'nisDomain: rfc4876' ,
                                       'returnString'   : _functionString }
             }
            </call>
          </sequence>
          <catch exception="'STAXException.LDAP.ModifyException'" typevar="eType" var="eInfo">
          <catch exception="'STAXException.LDAP.AddException'" typevar="eType" var="eInfo">
            <message log="1" level="'fatal'">
              '%s: LDAPModify failed. eInfo(%s)' % (eType,eInfo)
              '%s: LDAPAdd failed. eInfo(%s)' % (eType,eInfo)
            </message>
          </catch>
          <catch exception="'STAXException.LDAP.SearchException'" typevar="eType" var="eInfo">
            <message log="1" level="'fatal'">
              '%s: LDAPSearch failed. eInfo(%s)' % (eType,eInfo)
            </message>
          </catch>
          <catch exception="'STAXException.Utils.CheckStringException'" typevar="eType" var="eInfo">
            <message log="1" level="'fatal'">
              '%s: UtilsCheck failed. eInfo(%s)' % (eType,eInfo)
            </message>
          </catch>
          <finally>
opends/tests/staf-tests/functional-tests/testcases/tasks/cleanup.xml
@@ -32,41 +32,56 @@
    <sequence>
      <block name="'cleanup'">
        <sequence>
          <block name="'Block DS Process Stop'">
            <!--- Stop DS -->
            <sequence>
              <message>
                'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
              <call function="'StopDsWithScript'">
                { 'location'  : STAF_REMOTE_HOSTNAME,
                'dsHost'      : DIRECTORY_INSTANCE_HOST,
                'dsAdminPort' : DIRECTORY_INSTANCE_ADMIN_PORT,
                'dsBindDN'    : DIRECTORY_INSTANCE_DN,
                'dsBindPwd'   : DIRECTORY_INSTANCE_PSWD }
              </call>
              <call function="'checkRC'">
                { 'returncode' : RC ,
                'result'     : STAXResult }
              </call>
            </sequence>
            <!--- End Block DS Process Stop -->
          </block>
          <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>
              <call function="'removeTopology'"/>
              <call function="'checkRC'">
                { 'returncode' : RC ,
                'result'     : STAXResult }
              </call>
            </sequence>
            <!-- End Block Remove DS Topology-->
          </block>
          <script>
            CurrentTestPath['suite']='cleanup_tasks'
          </script>
          <call function="'testSuite_Preamble'" />
          <testcase name="getTestCaseName('Cleanup tasks')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <block name="'Block DS Process Stop'">
                <!--- Stop DS -->
                <sequence>
                  <message>
                    'Stop DS running on port %s' % (DIRECTORY_INSTANCE_PORT)
                  </message>
                  <call function="'StopDsWithScript'">
                    { 'location'  : STAF_REMOTE_HOSTNAME,
                    'dsHost'      : DIRECTORY_INSTANCE_HOST,
                    'dsAdminPort' : DIRECTORY_INSTANCE_ADMIN_PORT,
                    'dsBindDN'    : DIRECTORY_INSTANCE_DN,
                    'dsBindPwd'   : DIRECTORY_INSTANCE_PSWD }
                  </call>
                  <call function="'checkRC'">
                    { 'returncode' : RC ,
                    'result'     : STAXResult }
                  </call>
                </sequence>
                <!--- End Block DS Process Stop -->
              </block>
              <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>
                  <call function="'removeTopology'"/>
                  <call function="'checkRC'">
                    { 'returncode' : RC ,
                    'result'     : STAXResult }
                  </call>
                </sequence>
                <!-- End Block Remove DS Topology-->
              </block>
              <call function="'testCase_Postamble'"/>
            </sequence>
          </testcase>
          <call function="'testSuite_Postamble'"/>
        </sequence>        
      </block>
    </sequence>
opends/tests/staf-tests/functional-tests/testcases/tasks/export-ldif.xml
@@ -74,6 +74,27 @@
              'startTask'           : '0',
              'backEnd'             : DIRECTORY_INSTANCE_BE}
            </call>
            <!-- manage-tasks -->
            <call function="'manage-tasks'">
              { 'location'     : STAF_REMOTE_HOSTNAME ,
              'dsInstanceHost' : DIRECTORY_INSTANCE_HOST,
              'dsInstanceDn'   : DIRECTORY_INSTANCE_DN,
              'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
              'dsQuiet'        : ' '
              }
            </call>
            <script>
              returnString = STAXResult[0][1]
            </script>
            <call function="'searchStringForSubstring'">
              { 'returnString'    : returnString,
              'testString'        : 'Completed successfully',
              'expectedResult'    : '1' }
            </call>
            <message>'--- Check log files export_asynchronous ---'</message>
            <call function="'listFolder'">
              { 'location'   : '%s' % (STAF_REMOTE_HOSTNAME),
@@ -138,7 +159,7 @@
        
            <call function="'searchStringForSubstring'">
              { 'returnString'     : returnString,
              'testString'     : 'Export',
              'testString'         : 'Completed successfully',
              'expectedResult'     : '1' }
            </call>                
            
@@ -189,6 +210,26 @@
              'startTask'           : '20061212000000',
              'backEnd'             : DIRECTORY_INSTANCE_BE}
            </call>
            <!-- manage-tasks -->
            <call function="'manage-tasks'">
              { 'location'     : STAF_REMOTE_HOSTNAME ,
              'dsInstanceHost' : DIRECTORY_INSTANCE_HOST,
              'dsInstanceDn'   : DIRECTORY_INSTANCE_DN,
              'dsInstancePswd' : DIRECTORY_INSTANCE_PSWD,
              'dsQuiet'        : ' '
              }
            </call>
            <script>
              returnString = STAXResult[0][1]
            </script>
            <call function="'searchStringForSubstring'">
              { 'returnString'    : returnString,
              'testString'        : 'Completed successfully',
              'expectedResult'    : '1' }
            </call>
            
            <message>'--- Check log files export_asynchronous ---'</message>
            <call function="'listFolder'">
opends/tests/staf-tests/functional-tests/testcases/tasks/setup.xml
@@ -32,56 +32,72 @@
    <sequence>
      <block name="'setup'">
        <sequence>
          <block name="'Block Create DS Topology'">
            <!-- Create the topology necessary to the test group/suite -->
            <sequence>
              <message>
                'Create DS topology as described in config.py'
              </message>
              <call function="'createTopology'">
                { 'initialiseInstance' : True }
              </call>
              <call function="'checkRC'">
                { 'returncode' : RC ,
                'result'     : STAXResult }
              </call>
            </sequence>
            <!--- End Block Create DS Topology -->
          </block>
          <block name="'Block DS Process Active'">
            <!--- Start DS -->
            <sequence>
              <message>
                'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
              </message>
              <!--- Start DS -->
              <call function="'StartDsWithScript'">
                { '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>
              <call function="'ldapSearchWithScript'">
                { 'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                'dsBaseDN'     : 'dc=com' ,
                'dsFilter'     : 'objectclass=*' }
              </call>
            </sequence>
            <!--- End Block DS Process Active -->
          </block>
          <script>
            CurrentTestPath['suite']='setup_tasks'
          </script>
          <call function="'testSuite_Preamble'" />
          <testcase name="getTestCaseName('Setup tasks')">
            <sequence>
              <call function="'testCase_Preamble'"/>
              <block name="'Block Create DS Topology'">
                <!-- Create the topology necessary to the test group/suite -->
                <sequence>
                  <message>
                    'Create DS topology as described in config.py'
                  </message>
                  <call function="'createTopology'">
                    { 'initialiseInstance' : True }
                  </call>
                  <call function="'checkRC'">
                    { 'returncode' : RC ,
                    'result'     : STAXResult }
                  </call>
                </sequence>
                <!--- End Block Create DS Topology -->
              </block>
              <block name="'Block DS Process Active'">
                <!--- Start DS -->
                <sequence>
                  <message>
                    'Start DS to run on port %s' % (DIRECTORY_INSTANCE_PORT)
                  </message>
                  <!--- Start DS -->
                  <call function="'StartDsWithScript'">
                    { '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>
                  <call function="'ldapSearchWithScript'">
                    { 'dsInstancePort'   : DIRECTORY_INSTANCE_PORT ,
                    'dsInstanceDn'     : DIRECTORY_INSTANCE_DN ,
                    'dsInstancePswd'   : DIRECTORY_INSTANCE_PSWD ,
                    'dsBaseDN'     : 'dc=com' ,
                    'dsFilter'     : 'objectclass=*' }
                  </call>
                </sequence>
                <!--- End Block DS Process Active -->
              </block>
              <call function="'testSuite_Postamble'"/>
            </sequence>
          </testcase>
        </sequence>        
      </block>
    </sequence>