<?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
|
!
|
! Copyright 2006-2008 Sun Microsystems, Inc.
|
! -->
|
<stax>
|
<defaultcall function="main_schema"/>
|
|
<function name="main_schema" scope="local">
|
<function-list-args>
|
<function-required-arg name="STAXParentID"/>
|
</function-list-args>
|
|
<sequence>
|
<try>
|
<block name="'main_schema'">
|
<sequence>
|
|
<message log="1" level="'Info'">'STAXParentID= %s' % STAXParentID</message>
|
|
<!--- Load the job environment for the test group execution -->
|
<import machine="STAF_LOCAL_HOSTNAME"
|
file="'%s/environment.xml' % TESTS_FUNCTIONS_DIR" />
|
<call function="'loadJobEnvironment'">
|
{ 'parent' : STAXParentID }
|
</call>
|
|
<script>
|
_group='schema'
|
CurrentTestPath={ 'group' : '%s' % _group }
|
</script>
|
|
<!--- Test Group information
|
#@TestGroupName Schema Test
|
#@TestGroupPurpose Verify that schema is working correctly
|
-->
|
<call function="'testGroup_Preamble'"/>
|
|
<!-- List of test suites to run -->
|
<script>
|
suiteList=[]
|
suiteList.append('rfc')
|
suiteList.append('dynamic')
|
suiteList.append('solaris')
|
</script>
|
|
<!-- Data global to this test group -->
|
<!-- LDAP Server Object -->
|
<script>
|
server=directory_server()
|
server.location = STAF_REMOTE_HOSTNAME
|
server.host = DIRECTORY_INSTANCE_HOST
|
server.port = DIRECTORY_INSTANCE_PORT
|
server.adminport = DIRECTORY_INSTANCE_ADMIN_PORT
|
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 -->
|
<iterate var="_suite" in="suiteList">
|
<sequence>
|
<try>
|
<sequence>
|
<import machine="STAF_LOCAL_HOSTNAME"
|
file="'%s/testcases/%s/%s/%s_%s.xml' %
|
(TESTS_DIR,_group,_suite,_group,_suite)"/>
|
<call function="'main_%s_%s' % (_group,_suite)" />
|
</sequence>
|
<catch exception="'STAFException.TestSuite.SetupException'">
|
<sequence>
|
<message log="1" level="'fatal'">'Setup of test suite %s failed.' % _suite</message>
|
<throw exception="'STAXException.TestGroupException'" />
|
</sequence>
|
</catch>
|
<catch exception="'STAFException.TestSuite.MainException'">
|
<sequence>
|
<message log="1" level="'fatal'">'Main part of test suite %s failed.' % _suite</message>
|
<throw exception="'STAXException.TestGroupException'" />
|
</sequence>
|
</catch>
|
<catch exception="'STAFException.TestSuite.CleanupException'">
|
<sequence>
|
<message log="1" level="'fatal'">'Cleanup of test suite %s failed.' % _suite</message>
|
<throw exception="'STAXException.TestGroupException'" />
|
</sequence>
|
</catch>
|
</try>
|
</sequence>
|
</iterate>
|
|
</sequence>
|
</block>
|
<finally>
|
<!-- Test Group postamble -->
|
<call function="'testGroup_Postamble'"/>
|
</finally>
|
</try>
|
</sequence>
|
</function>
|
</stax>
|