mirror of
https://github.com/moparisthebest/JdbcMapper
synced 2024-11-29 12:12:15 -05:00
239 lines
10 KiB
XML
239 lines
10 KiB
XML
<?xml version="1.0"?>
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
<project name="JdbcControl Container Cactus Unit Tests" basedir=".">
|
|
|
|
<dirname property="my.home" file="${ant.file}"/>
|
|
<!--
|
|
<property name="jdbcc.home" location="${my.home}/../.."/>
|
|
<import file="${jdbcc.home}/jdbccontrol-imports.xml"/>
|
|
-->
|
|
<import file="../../ant/test-imports.xml"/>
|
|
|
|
<property environment="os"/>
|
|
<property name="cactus.home" location="${os.CACTUS_HOME}"/>
|
|
<property name="catalina.home" location="${os.CATALINA_HOME}"/>
|
|
|
|
<!-- Generic properties -->
|
|
<property name="debug" value="on"/>
|
|
<property name="optimize" value="off"/>
|
|
<property name="deprecation" value="off"/>
|
|
|
|
<property name="src.cactus.dir" location="${my.home}/src"/>
|
|
<property name="src.webapp.dir" location="${my.home}/webapp"/>
|
|
|
|
<!-- Global project properties -->
|
|
<property name="project.name.text" value="JdbcControl Container Test"/>
|
|
<property name="project.name.file" value="jdbccontrol"/>
|
|
<property name="project.version" value="1.7"/>
|
|
|
|
<!-- Libraries required for the Cactus tests -->
|
|
<property name="aspectjrt.jar"
|
|
location="${cactus.home}/lib/aspectjrt-1.2.1.jar"/>
|
|
<property name="cactus.jar"
|
|
location="${cactus.home}/lib/cactus-1.7.jar"/>
|
|
<property name="cactus.ant.jar"
|
|
location="${cactus.home}/lib/cactus-ant-1.7.jar"/>
|
|
<property name="commons.httpclient.jar"
|
|
location="${cactus.home}/lib/commons-httpclient-2.0.2.jar"/>
|
|
<property name="commons.logging.jar"
|
|
location="${cactus.home}/lib/commons-logging-1.0.4.jar"/>
|
|
<property name="junit.jar"
|
|
location="${cactus.home}/lib/junit-3.8.1.jar"/>
|
|
<path id="cactus.classpath">
|
|
<pathelement location="${aspectjrt.jar}"/>
|
|
<pathelement location="${cactus.jar}"/>
|
|
<pathelement location="${cactus.ant.jar}"/>
|
|
<pathelement location="${commons.httpclient.jar}"/>
|
|
<pathelement location="${commons.logging.jar}"/>
|
|
<pathelement location="${junit.jar}"/>
|
|
</path>
|
|
|
|
<!-- load the ant cactus tasks -->
|
|
<taskdef resource="cactus.tasks" classpathref="cactus.classpath"/>
|
|
<taskdef name="apt" classname="org.apache.beehive.controls.runtime.generator.AptTask"
|
|
classpathref="controls.dependency.path" onerror="report"/>
|
|
|
|
<!-- Destination locations for the build -->
|
|
<property name="module.name" value="jdbc-container"/>
|
|
<property name="module.dir" location="${test.src.dir}/jdbc/${module.name}"/>
|
|
<property name="module.classes.dir" location="${test.classes.dir}/${module.name}"/>
|
|
<property name="module.gensrc.dir" location="${test.classes.dir}/${module.name}-generated-src"/>
|
|
<property name="module.classes.cactus.dir" location="${module.classes.dir}/cactus"/>
|
|
|
|
<!--
|
|
<property name="target.dir" location="${jdbcc.home}/build/container"/>
|
|
<property name="target.gensrc.dir" location="${jdbcc.home}/build/container/gensrc"/>
|
|
<property name="target.classes.dir" location="${target.dir}/classes"/>
|
|
<property name="target.classes.cactus.dir" location="${target.classes.dir}/cactus"/>
|
|
-->
|
|
|
|
<!-- class path for running these tests -->
|
|
<path id="test.classpath">
|
|
<!--<pathelement location="${testcontrols.jar}"/>-->
|
|
<path refid="test-controls.dependency.path"/>
|
|
<pathelement location="${module.classes.cactus.dir}"/>
|
|
<!--<pathelement location="${target.classes.cactus.dir}"/>-->
|
|
<pathelement location="${test.classes.dir}/junitTests"/>
|
|
<!-- <pathelement location="${jdbcc.build.dir}/test/classes/units"/> -->
|
|
<!--<pathelement location="${jdbcc.jar}"/>-->
|
|
<path refid="jdbc-control.dependency.path"/>
|
|
<path refid="controls.dependency.path"/>
|
|
<path refid="xbean.dependency.path"/>
|
|
<path refid="log4j.dependency.path"/>
|
|
<path refid="velocity.dependency.path"/>
|
|
<path refid="tools.dependency.path"/>
|
|
<path refid="derby.dependency.path"/>
|
|
<path refid="junit.dependency.path"/>
|
|
<path refid="commons-discovery.dependency.path"/>
|
|
<path refid="commons-codec.dependency.path"/>
|
|
</path>
|
|
|
|
|
|
<!--
|
|
========================================================================
|
|
Clean generated files (including distributables)
|
|
========================================================================
|
|
-->
|
|
<target name="clean" description="Clean all generated files">
|
|
<delete dir="${module.classes.dir}"/>
|
|
<delete dir="${module.gensrc.dir}"/>
|
|
<delete dir="${module.classes.cactus.dir}"/>
|
|
</target>
|
|
|
|
|
|
<!--
|
|
========================================================================
|
|
Build the catus test file.
|
|
========================================================================
|
|
-->
|
|
<target name="compile.cactus">
|
|
|
|
<mkdir dir="${module.classes.cactus.dir}"/>
|
|
<apt srcdir="${src.cactus.dir}"
|
|
gendir="${module.gensrc.dir}"
|
|
destdir="${module.classes.cactus.dir}"
|
|
compileByExtension="true"
|
|
debug="${compiler.debug}"
|
|
srcExtensions="*.jcx,*.jcs,*.java">
|
|
<classpath>
|
|
<path refid="cactus.classpath"/>
|
|
<path refid="test.classpath"/>
|
|
</classpath>
|
|
</apt>
|
|
</target>
|
|
|
|
<!--
|
|
========================================================================
|
|
Run the tests on the containers for which the Ant property
|
|
"cactus.home.[container name]" has been defined.
|
|
========================================================================
|
|
-->
|
|
<target name="test.prepare" depends="test.war">
|
|
<!-- Prepare the directories for the JUnit reports -->
|
|
</target>
|
|
|
|
|
|
<!--
|
|
========================================================================
|
|
Create the war file that will hold the Cactus tests. At this point in
|
|
time, as there isn't a <cactifyear> Ant task, we need to create
|
|
manually a war file even if our application doesn't need one.
|
|
========================================================================
|
|
-->
|
|
<target name="test.war" depends="compile.cactus">
|
|
|
|
<war warfile="${test.lib.dir}/${project.name.file}.war"
|
|
webxml="${src.webapp.dir}/WEB-INF/web.xml">
|
|
</war>
|
|
|
|
<!-- Cactify the web-app archive -->
|
|
<cactifywar srcfile="${test.lib.dir}/${project.name.file}.war"
|
|
destfile="${test.lib.dir}/${project.name.file}-cactified.war"
|
|
mergewebxml="${src.webapp.dir}/WEB-INF/cactus-web.xml">
|
|
|
|
<classes dir="${module.classes.cactus.dir}"/>
|
|
<classes dir="${test.classes.dir}/junitTests"/>
|
|
<classes dir="${test.classes.dir}/controls"/>
|
|
|
|
<!-- Needed for Clover coverage reports -->
|
|
<lib file="${clover.jar}"/>
|
|
|
|
<lib file="${build.lib.dir}/${jdbccontrol.jar.name}"/>
|
|
<lib file="${beehive.home}/controls/build/jars/controls.jar"/>
|
|
<lib file="${beehive.home}/external/xmlbeans/apache-xbean.jar"/>
|
|
<lib file="${beehive.home}/external/commons/commons-codec-1.3.jar"/>
|
|
<lib file="${beehive.home}/external/commons/commons-discovery-0.2.jar"/>
|
|
<lib file="${beehive.home}/external/log4j/log4j-1.2.8.jar"/>
|
|
<lib file="${beehive.home}/installed/jsr173/jsr173_1.0_api.jar"/>
|
|
<lib file="${beehive.home}/external/derby/derby_46005.jar"/>
|
|
</cactifywar>
|
|
</target>
|
|
|
|
<!--
|
|
========================================================================
|
|
Run the cactus tests.
|
|
========================================================================
|
|
-->
|
|
<target name="test" depends="clean, test.prepare"
|
|
description="Run the tests on the defined containers">
|
|
|
|
<!-- NOTE: Temporary location for now -->
|
|
<property name="cactus.testlog.dir" location="${test.lib.dir}/jdbc-container-logs"/>
|
|
<property name="test.derby.dir" location="${test.lib.dir}/derby"/>
|
|
<mkdir dir="${cactus.testlog.dir}"/>
|
|
<mkdir dir="${test.derby.dir}"/>
|
|
|
|
<!-- Run the tests -->
|
|
<cactus warfile="${test.lib.dir}/${project.name.file}-cactified.war"
|
|
fork="yes" failureproperty="tests.failed">
|
|
<sysproperty key="derby.system.home" value="${test.derby.dir}"/>
|
|
<classpath>
|
|
<path refid="cactus.classpath"/>
|
|
<path refid="test.classpath"/>
|
|
</classpath>
|
|
<containerset>
|
|
|
|
<!-- tomcat5x -->
|
|
<!-- <tomcat5x dir="${catalina.home}" port="8080" if="tomcat5x"> -->
|
|
<tomcat5x dir="${catalina.home}">
|
|
<conf dir="${my.home}/webapp/conf"/>
|
|
</tomcat5x>
|
|
|
|
</containerset>
|
|
<formatter type="brief" usefile="false"/>
|
|
<formatter type="xml"/>
|
|
<batchtest todir="${cactus.testlog.dir}">
|
|
<fileset dir="${src.cactus.dir}">
|
|
<include name="**/Test*.java"/>
|
|
<exclude name="**/Test*All.java"/>
|
|
<exclude name="**/Test*ClientInitializer.java"/>
|
|
</fileset>
|
|
</batchtest>
|
|
</cactus>
|
|
|
|
<!-- Generate the JUnit reports -->
|
|
<junitreport todir="${cactus.testlog.dir}">
|
|
<fileset dir="${cactus.testlog.dir}" includes="TEST-*.xml"/>
|
|
<report todir="${cactus.testlog.dir}" format="frames"/>
|
|
</junitreport>
|
|
|
|
<fail if="tests.failed">At least one test failed!</fail>
|
|
</target>
|
|
|
|
</project>
|