blob: e046e640642b8918f72cde1557f44fe545d855d5 [file] [log] [blame]
cowtowncoderba364612008-03-24 05:59:43 +00001<?xml version="1.0" standalone='yes'?>
2
cowtowncoder19590b92008-11-21 20:54:14 +00003 <project name="Jackson JSON parser" basedir="." default="readme">
cowtowncoderba364612008-03-24 05:59:43 +00004
5 <!-- Source directories -->
cowtowncoder19590b92008-11-21 20:54:14 +00006 <property name="dir.src" location="${basedir}/src" />
7 <property name="dir.src.java" location="${dir.src}/java" />
cowtowncodere0a3f242009-03-02 18:43:09 +00008 <property name="dir.src.java.core" location="${dir.src.java}" />
9 <property name="dir.src.java.mapper" location="${dir.src.java}" />
10 <property name="dir.src.java.jaxrs" location="${dir.src}/jaxrs/java" />
cowtowncoder72304f72009-04-24 23:21:38 +000011 <property name="dir.src.resource.jaxrs" location="${dir.src}/jaxrs/resources" />
cowtowncoder57183f82009-02-18 18:04:24 +000012 <property name="dir.src.maven" location="${dir.src}/maven" />
cowtowncoder5d328e72009-01-20 06:31:54 +000013 <property name="dir.src.test" location="${dir.src}/test" />
14 <property name="dir.src.sample" location="${dir.src}/sample" />
cowtowncoder288e83d2009-02-16 18:21:46 +000015 <property name="dir.src.tools" location="${dir.src}/tools" />
cowtowncoder19590b92008-11-21 20:54:14 +000016 <property name="dir.releasenotes" location="${basedir}/release-notes" />
cowtowncoderba364612008-03-24 05:59:43 +000017
18 <!-- Libs -->
cowtowncoder19590b92008-11-21 20:54:14 +000019 <property name="dir.lib" location="${basedir}/lib" />
cowtowncoderba364612008-03-24 05:59:43 +000020 <!-- Build-related -->
cowtowncoder19590b92008-11-21 20:54:14 +000021 <property name="dir.build" location="${basedir}/build" />
cowtowncoder6fe44382009-01-14 06:49:09 +000022 <property name="dir.build.classes.core" location="${dir.build}/classes/core" />
23 <property name="dir.build.classes.mapper" location="${dir.build}/classes/mapper" />
cowtowncodere0a3f242009-03-02 18:43:09 +000024 <property name="dir.build.classes.jaxrs" location="${dir.build}/classes/jaxrs" />
cowtowncoder288e83d2009-02-16 18:21:46 +000025 <!-- both "sample" and "tools" java code goes under "extra" -->
cowtowncoder6fe44382009-01-14 06:49:09 +000026 <property name="dir.build.classes.extra" location="${dir.build}/classes/extra" />
cowtowncoder0ce23fb2009-01-15 00:14:16 +000027 <!-- some support for perf testing -->
28 <property name="dir.build.classes.perf" location="${dir.build}/classes/perf" />
cowtowncoder19590b92008-11-21 20:54:14 +000029
cowtowncoderba364612008-03-24 05:59:43 +000030 <!-- Test suite -->
cowtowncoder19590b92008-11-21 20:54:14 +000031 <property name="dir.test" location="${basedir}/test" />
32 <property name="dir.test.classes" location="${dir.test}/classes" />
33 <property name="dir.test.results" location="${dir.test}/results" />
34 <property name="dir.test.xmlresults" location="${dir.test.results}/xml" />
cowtowncoder557fccb2008-11-25 06:58:40 +000035
36 <!-- Documentation -->
37 <property name="dir.doc" location="${basedir}/doc" />
38 <property name="dir.javadoc" location="${dir.build}/javadoc" />
cowtowncoder19590b92008-11-21 20:54:14 +000039
cowtowncoderba364612008-03-24 05:59:43 +000040 <!-- Distribution -->
cowtowncoder19590b92008-11-21 20:54:14 +000041 <property name="dir.dist" location="${basedir}/dist" />
cowtowncoderba364612008-03-24 05:59:43 +000042
43 <!-- Version information -->
44
45 <!-- Version -->
46 <property name="JSON_TITLE" value="Json - JavaScript Object Notation" />
47 <property name="JSON_VERSION" value="1.0" />
48 <property name="JSON_VENDOR" value="http://www.ietf.org/rfc/rfc4627.txt" />
cowtowncoder6fe44382009-01-14 06:49:09 +000049 <property name="IMPL_TITLE_CORE" value="Jackson JSON processor" />
50 <property name="IMPL_TITLE_MAPPER" value="Data mapper for Jackson JSON processor" />
cowtowncodere0a3f242009-03-02 18:43:09 +000051 <property name="IMPL_TITLE_JAXRS" value="JAX-RS provider for Json content type, using Jackson data binding" />
52
cowtowncoderee2682f2009-05-14 02:48:01 +000053 <property name="IMPL_VERSION" value="1.0.1-SNAPSHOT" />
cowtowncoder47d26cf2009-02-13 23:12:29 +000054 <property name="IMPL_VENDOR" value="http://fasterxml.com" />
cowtowncoderba364612008-03-24 05:59:43 +000055
cowtowncodere7179c32009-02-16 21:39:51 +000056 <path id="test-libs">
cowtowncoder19590b92008-11-21 20:54:14 +000057 <fileset dir="${dir.lib}">
cowtowncodere7179c32009-02-16 21:39:51 +000058 <include name="junit/*.jar" />
59 <include name="cglib/*.jar" />
cowtowncoderba364612008-03-24 05:59:43 +000060 </fileset>
61 </path>
62
cowtowncoder2cb33d42009-01-14 07:03:29 +000063 <patternset id="dist-all-source-files">
cowtowncoderab566eb2009-01-21 19:06:36 +000064 <include name="README.txt" />
cowtowncodercbfb6ab2009-05-01 06:29:51 +000065 <include name="build*.xml" />
cowtowncoder2cb33d42009-01-14 07:03:29 +000066 <include name="release-notes/*" />
cowtowncoderab566eb2009-01-21 19:06:36 +000067 <include name="DEV/contributor*" />
cowtowncoder2cb33d42009-01-14 07:03:29 +000068 <include name="src/**/*.java" />
cowtowncoderb33fc3e2008-07-26 05:04:33 +000069 <include name="src/java/**/*.html" />
70 <include name="src/maven/*.pom" />
71 <include name="release-notes/*" />
72 <include name="release-notes/asl/*" />
73 <include name="release-notes/lgpl/*" />
cowtowncoder314c4832008-09-07 17:39:33 +000074 <!-- need jars for auxiliary tasks (tests), although jackson
75 itself does not depend on any other packages, just JDK 1.5
76 -->
77 <include name="lib/**/*.jar" />
78 <include name="samples/**/*.jsn" />
cowtowncoderb33fc3e2008-07-26 05:04:33 +000079 </patternset>
80
cowtowncoder1275a2b2009-01-14 00:52:21 +000081 <!-- some build tasks are refactored out of the main task -->
82 <import file="build-osgi.xml" />
cowtowncoder57183f82009-02-18 18:04:24 +000083 <import file="build-maven-deploy.xml" />
cowtowncoder1275a2b2009-01-14 00:52:21 +000084 <import file="build-coverage.xml" />
cowtowncoderba364612008-03-24 05:59:43 +000085
cowtowncoderf30c9972008-11-22 23:46:49 +000086
cowtowncoderba364612008-03-24 05:59:43 +000087 <!--*********************************************************************-->
88 <!-- The readme target shows a brief description of all targets -->
89 <!-- supported by this ant build file -->
90 <!--*********************************************************************-->
91 <target name="readme">
cowtowncoder19590b92008-11-21 20:54:14 +000092 <echo message = "${ant.project.name}'s Available Targets" />
cowtowncoderba364612008-03-24 05:59:43 +000093 <echo message = "---------------------------------------------------" />
94 <echo message = "1) readme - Displays this information (default target)." />
95 <echo message = "2) clean - Remove any generated files/directories." />
cowtowncoder6c77e7d2009-01-14 00:41:12 +000096 <echo message = "3) compile.all - Compile all code for ${ant.project.name}." />
cowtowncoder19590b92008-11-21 20:54:14 +000097 <echo message = "4) jars - Compile and create all jars for non-test ${ant.project.name} code (see below for specific ones)." />
98 <echo message = "4b) jar.asl - Compile and create jar for non-test ${ant.project.name} cod, under Apache (2.0) license." />
99 <echo message = "5) javadoc - Generate ${ant.project.name} code documentation." />
cowtowncoder0679f4c2008-11-26 19:43:53 +0000100 <echo message = "6) compile.test - Compile ${ant.project.name} code and test code" />
cowtowncoderba364612008-03-24 05:59:43 +0000101 <echo message = " for JUnit tests." />
102 <echo message = "7) test - Run JUnit tests." />
103 <echo message = "8) dist - Create distribution directory and copy necessary files there" />
104 <echo message = "9) all - Run the clean, compile, javadoc," />
105 <echo message = " test and dist targets." />
106 <echo message = "" />
107 <echo message = "Available command-line arguments:" />
108 <echo message = "---------------------------------" />
109 <echo message = "none" />
110 </target>
111
112 <target name="prepare">
113 <!-- make build directories -->
cowtowncoder19590b92008-11-21 20:54:14 +0000114 <mkdir dir="${dir.build}" />
cowtowncoder6fe44382009-01-14 06:49:09 +0000115 <mkdir dir="${dir.build.classes.core}" />
116 <mkdir dir="${dir.build.classes.mapper}" />
cowtowncodere0a3f242009-03-02 18:43:09 +0000117 <mkdir dir="${dir.build.classes.jaxrs}" />
cowtowncoder6fe44382009-01-14 06:49:09 +0000118 <mkdir dir="${dir.build.classes.extra}" />
cowtowncoderba364612008-03-24 05:59:43 +0000119
120 <!-- make docs directories -->
cowtowncoder19590b92008-11-21 20:54:14 +0000121 <mkdir dir="${dir.doc}" />
122 <mkdir dir="${dir.javadoc}" />
cowtowncoderba364612008-03-24 05:59:43 +0000123
124 <!-- make test output directories -->
cowtowncoder19590b92008-11-21 20:54:14 +0000125 <mkdir dir="${dir.test}" />
126 <mkdir dir="${dir.test.classes}" />
127 <mkdir dir="${dir.test.results}" />
128 <mkdir dir="${dir.test.xmlresults}" />
cowtowncoderba364612008-03-24 05:59:43 +0000129
130 <!-- and finally distribution dir -->
cowtowncoder19590b92008-11-21 20:54:14 +0000131 <mkdir dir="${dir.dist}" />
cowtowncoderba364612008-03-24 05:59:43 +0000132 </target>
133
134 <!-- ***********************************************
135 - supporting dummy tasks
136 - ***********************************************-->
137
138
139 <!-- ***********************************************
140 - clean - Removes all generated files/directories
141 - ***********************************************-->
142
143 <target name="clean">
cowtowncoder19590b92008-11-21 20:54:14 +0000144 <delete dir="${dir.build}"/>
145 <delete dir="${dir.doc}"/>
146 <delete dir="${dir.test}"/>
147 <delete dir="${dir.dist}"/>
cowtowncoder134d6e32008-11-24 22:11:45 +0000148 <delete file="cobertura.ser" />
cowtowncoderba364612008-03-24 05:59:43 +0000149 </target>
150
cowtowncoder6c77e7d2009-01-14 00:41:12 +0000151 <target name="compile" depends="compile.all" />
cowtowncoder288e83d2009-02-16 18:21:46 +0000152 <target name="compile.all" depends="
153compile.main, compile.test, compile.extra, compile.perf" />
cowtowncodere0a3f242009-03-02 18:43:09 +0000154 <target name="compile.main"
155 depends="compile.core, compile.mapper, compile.jaxrs" />
cowtowncoder0679f4c2008-11-26 19:43:53 +0000156
157 <target name="compile.core" depends="prepare">
cowtowncoder6fe44382009-01-14 06:49:09 +0000158 <javac srcdir="${dir.src.java}" destdir="${dir.build.classes.core}"
cowtowncodere3e40b02008-04-25 05:30:01 +0000159 source="1.5" target="1.5"
cowtowncoderba364612008-03-24 05:59:43 +0000160 debug="true"
161 >
162 <compilerarg value="-Xlint:unchecked" />
cowtowncoder34c83e22009-01-13 20:30:41 +0000163 <exclude name="org/codehaus/jackson/map/**/*.java" />
cowtowncoderaf004782009-02-16 23:18:08 +0000164 <exclude name="org/codehaus/jackson/node/**/*.java" />
cowtowncoderba364612008-03-24 05:59:43 +0000165 <include name="org/codehaus/**/*.java" />
cowtowncoder34c83e22009-01-13 20:30:41 +0000166 </javac>
167 </target>
168
169 <target name="compile.mapper" depends="compile.core">
cowtowncoder6fe44382009-01-14 06:49:09 +0000170 <javac srcdir="${dir.src.java}" destdir="${dir.build.classes.mapper}"
cowtowncoder34c83e22009-01-13 20:30:41 +0000171 source="1.5" target="1.5"
172 debug="true"
173 >
174 <compilerarg value="-Xlint:unchecked" />
175 <include name="org/codehaus/jackson/map/**/*.java" />
cowtowncoder6fe44382009-01-14 06:49:09 +0000176 <!-- mapper builds on core classes -->
177 <classpath>
178 <pathelement path="${dir.build.classes.core}"/>
179 </classpath>
cowtowncoder34c83e22009-01-13 20:30:41 +0000180 </javac>
181 </target>
182
cowtowncodere0a3f242009-03-02 18:43:09 +0000183 <target name="compile.jaxrs" depends="compile.mapper">
184 <javac srcdir="${dir.src.java.jaxrs}" destdir="${dir.build.classes.jaxrs}"
185 source="1.5" target="1.5"
186 debug="true"
187 >
188 <compilerarg value="-Xlint:unchecked" />
189 <include name="org/codehaus/jackson/**/*.java" />
190 <!-- builds on core and mapper classes -->
191 <classpath>
192 <fileset dir="${dir.lib}/jaxrs">
193 <include name="*.jar" />
194 </fileset>
195 <pathelement path="${dir.build.classes.core}"/>
196 <pathelement path="${dir.build.classes.mapper}"/>
197 </classpath>
198 </javac>
199 </target>
200
cowtowncoder6c77e7d2009-01-14 00:41:12 +0000201 <target name="compile.extra" depends="compile.main">
cowtowncoder5d328e72009-01-20 06:31:54 +0000202 <javac destdir="${dir.build.classes.extra}"
cowtowncoder34c83e22009-01-13 20:30:41 +0000203 source="1.5" target="1.5" debug="true"
204 >
205 <compilerarg value="-Xlint:unchecked" />
cowtowncoder5d328e72009-01-20 06:31:54 +0000206 <src path="${dir.src.sample}" />
cowtowncoder288e83d2009-02-16 18:21:46 +0000207 <src path="${dir.src.tools}" />
cowtowncoder5d328e72009-01-20 06:31:54 +0000208 <include name="**/*.java" />
cowtowncoder6fe44382009-01-14 06:49:09 +0000209 <!-- need core and mapper classes -->
210 <classpath>
211 <pathelement path="${dir.build.classes.core}"/>
212 <pathelement path="${dir.build.classes.mapper}"/>
213 </classpath>
cowtowncoderba364612008-03-24 05:59:43 +0000214 </javac>
cowtowncoderc216e852008-04-04 15:51:48 +0000215 </target>
216
cowtowncoder6c77e7d2009-01-14 00:41:12 +0000217 <target name="compile.perf" depends="compile.main">
cowtowncoder0ce23fb2009-01-15 00:14:16 +0000218 <mkdir dir="${dir.build.classes.perf}" />
cowtowncoderba364612008-03-24 05:59:43 +0000219 <!-- Let's also compile micro-benchmarks... -->
cowtowncoder0ce23fb2009-01-15 00:14:16 +0000220 <javac srcdir="${dir.src}/perf" destdir="${dir.build.classes.perf}" debug="false"
cowtowncoderba364612008-03-24 05:59:43 +0000221 >
222 <classpath>
cowtowncoder19590b92008-11-21 20:54:14 +0000223 <fileset dir="${dir.lib}/perf">
cowtowncoderba364612008-03-24 05:59:43 +0000224 <include name="*.jar" />
225 </fileset>
cowtowncoder6fe44382009-01-14 06:49:09 +0000226 <pathelement path="${dir.build.classes.core}"/>
227 <pathelement path="${dir.build.classes.mapper}"/>
cowtowncoderba364612008-03-24 05:59:43 +0000228 </classpath>
229 <include name="**/*.java" />
230 </javac>
231 </target>
232
233 <!-- Dummy target that just includes all individual jars... -->
234 <target name="jars"
cowtowncodere0a3f242009-03-02 18:43:09 +0000235 depends="jars.asl, jars.lgpl, jars.other"
cowtowncoderba364612008-03-24 05:59:43 +0000236 />
237
cowtowncodere0a3f242009-03-02 18:43:09 +0000238 <target name="javadoc" depends="compile.all">
cowtowncoderba364612008-03-24 05:59:43 +0000239 <!-- Build a dirpath that contains just the "source" tree -->
cowtowncodere8653de2008-04-26 03:40:30 +0000240 <javadoc windowtitle="Jackson JSON Processor"
cowtowncoder19590b92008-11-21 20:54:14 +0000241 destdir="${dir.javadoc}"
cowtowncoderba364612008-03-24 05:59:43 +0000242 author="true"
243 version="true">
cowtowncoder19590b92008-11-21 20:54:14 +0000244 <packageset dir="${dir.src.java}" defaultexcludes="yes">
cowtowncoderba364612008-03-24 05:59:43 +0000245 <include name="org/codehaus/**" />
246 </packageset>
cowtowncoderba364612008-03-24 05:59:43 +0000247 </javadoc>
248 </target>
cowtowncoder636c2ab2009-01-15 05:47:12 +0000249
250 <!-- Generic distribution target builds the structure we copy over
251 to the website.
252 -->
cowtowncoder6c77e7d2009-01-14 00:41:12 +0000253 <target name="dist" depends="compile.all ,jars, javadoc"
cowtowncoderba364612008-03-24 05:59:43 +0000254 >
255 <!-- First, let's copy the binary jars to dist -->
cowtowncoder19590b92008-11-21 20:54:14 +0000256 <copy todir="${dir.dist}">
257 <fileset dir="${dir.build}" includes="*.jar" />
cowtowncoderba364612008-03-24 05:59:43 +0000258 </copy>
cowtowncoderba364612008-03-24 05:59:43 +0000259
cowtowncoderb4421f82009-01-21 18:42:38 +0000260 <!-- Then let's create the source distribution tar packages
261 -->
262 <!-- Need to first copy to a tmp dir, to get the additional
263 directory (so tar/zip contents won't explode directly
264 in current dir)
265 -->
266 <property name="DIST_FILENAME" value="jackson-src-${IMPL_VERSION}" />
cowtowncoderab566eb2009-01-21 19:06:36 +0000267 <property name="DIST_DIR" value="${DIST_FILENAME}" />
268
269 <!-- better always clean it up, if it exists... -->
cowtowncoderb4421f82009-01-21 18:42:38 +0000270 <delete dir="${dir.build}/${DIST_DIR}" />
271 <mkdir dir="${dir.build}/${DIST_DIR}" />
272
273 <copy todir="${dir.build}/${DIST_DIR}">
274 <fileset dir="${basedir}">
275 <patternset refid="dist-all-source-files" />
276 </fileset>
277 </copy>
278
279 <!-- then create tarball, zip -->
280 <tar basedir="${dir.build}"
281 includes="${DIST_DIR}/**"
282 destfile="${dir.dist}/${DIST_FILENAME}.tar.gz"
283 compression="gzip"
284 />
285 <zip basedir="${dir.build}"
286 includes="${DIST_DIR}/**"
287 destfile="${dir.dist}/${DIST_FILENAME}.zip"
288 />
cowtowncoderba364612008-03-24 05:59:43 +0000289
cowtowncoder2cb33d42009-01-14 07:03:29 +0000290 <!-- And create source jars for IDE support; separate for core, mapper
291 and both license types
292 -->
293 <jar destfile="${dir.dist}/jackson-core-asl-${IMPL_VERSION}-sources.jar"
294 filesonly="true" compress="true" basedir="${dir.src.java}"
295 excludes="org/codehaus/jackson/map/**"
296 includes="org/codehaus/jackson/**"
297 />
298 <jar destfile="${dir.dist}/jackson-mapper-asl-${IMPL_VERSION}-sources.jar"
299 filesonly="true" compress="true" basedir="${dir.src.java}"
300 includes="org/codehaus/jackson/map/**"
301 />
302
303 <jar destfile="${dir.dist}/jackson-core-lgpl-${IMPL_VERSION}-sources.jar"
304 filesonly="true" compress="true" basedir="${dir.src.java}"
305 excludes="org/codehaus/jackson/map/**"
306 includes="org/codehaus/jackson/**"
307 />
308 <jar destfile="${dir.dist}/jackson-mapper-lgpl-${IMPL_VERSION}-sources.jar"
309 filesonly="true" compress="true" basedir="${dir.src.java}"
310 includes="org/codehaus/jackson/map/**"
311 />
cowtowncoder179caae2009-03-03 07:20:32 +0000312 <jar destfile="${dir.dist}/jackson-jaxrs-${IMPL_VERSION}-sources.jar"
313 filesonly="true" compress="true" basedir="${dir.src.java.jaxrs}"
314 includes="org/codehaus/jackson/jaxrs/**"
315 />
cowtowncoderb33fc3e2008-07-26 05:04:33 +0000316
cowtowncoderba364612008-03-24 05:59:43 +0000317 <!-- Then copy javadocs -->
cowtowncoder19590b92008-11-21 20:54:14 +0000318 <copy todir="${dir.dist}">
319 <fileset dir="${dir.javadoc}/.." includes="javadoc/**/*" />
cowtowncoderba364612008-03-24 05:59:43 +0000320 </copy>
321 <!-- Plus, let's also just copy README and compatibility files, in
322 addition to being included in source package
323 -->
cowtowncoder19590b92008-11-21 20:54:14 +0000324 <copy todir="${dir.dist}" >
cowtowncoderba364612008-03-24 05:59:43 +0000325 <fileset dir="." includes="release-notes/*" />
326 <fileset dir="." includes="release-notes/asl/*" />
327 <fileset dir="." includes="release-notes/lgpl/*" />
328 </copy>
329 <!-- And also additional Maven stuff -->
cowtowncoder9ec956e2008-12-03 17:40:31 +0000330 <copy todir="${dir.dist}">
cowtowncoder19590b92008-11-21 20:54:14 +0000331 <fileset dir="${dir.src}/maven" includes="*.pom" />
cowtowncoderba364612008-03-24 05:59:43 +0000332 <globmapper from="*.pom" to="*-${IMPL_VERSION}.pom" />
333 <filterset>
cowtowncoder9ec956e2008-12-03 17:40:31 +0000334 <filter token="VERSION" value="${IMPL_VERSION}" />
cowtowncoderba364612008-03-24 05:59:43 +0000335 </filterset>
cowtowncoder9ec956e2008-12-03 17:40:31 +0000336 </copy>
337 <!-- 03-Dec-2008, tatu: Let's validate well-formedness of
338 resulting files (to avoid things like [JACKSON-25])
339 -->
340 <xmlvalidate lenient="true">
341 <!-- lenient: check only well-formedness, no dtd/schema (yet) -->
342 <fileset dir="${dir.src}/maven" includes="*.pom" />
343 </xmlvalidate>
cowtowncoderba364612008-03-24 05:59:43 +0000344 </target>
345
346 <target name="all" depends="clean,javadoc,test,dist">
347 <!-- This target simply depends on others to do its job -->
348 </target>
349
350 <!--*********************************************************************-->
351 <!-- Tasks from here down are in support of junit tests. -->
352 <!--*********************************************************************-->
353 <target name="all-tests" depends="test" />
354
355
356 <!-- Compiling and running test cases
357 -->
358
cowtowncoder6c77e7d2009-01-14 00:41:12 +0000359 <target name="compile.test" depends="compile.main">
cowtowncoder5d328e72009-01-20 06:31:54 +0000360 <javac srcdir="${dir.src.test}" destdir="${dir.test.classes}"
cowtowncodere3e40b02008-04-25 05:30:01 +0000361 source="1.5" target="1.5"
cowtowncoderba364612008-03-24 05:59:43 +0000362 debug="true"
363 >
364 <include name="**/*.java" />
cowtowncoderba364612008-03-24 05:59:43 +0000365 <classpath>
cowtowncoder6fe44382009-01-14 06:49:09 +0000366 <pathelement path="${dir.build.classes.core}"/>
367 <pathelement path="${dir.build.classes.mapper}"/>
cowtowncodere7179c32009-02-16 21:39:51 +0000368 <path refid="test-libs"/>
cowtowncoderba364612008-03-24 05:59:43 +0000369 </classpath>
370 </javac>
371 </target>
372
373
cowtowncoder0679f4c2008-11-26 19:43:53 +0000374 <target name="test" depends="compile.test">
cowtowncoderba364612008-03-24 05:59:43 +0000375 <!-- showoutput 'yes' to allow outputting debug msgs... -->
376 <junit fork="no" printsummary="yes" haltonfailure="no"
377 showoutput="yes">
cowtowncoder19590b92008-11-21 20:54:14 +0000378 <batchtest fork="no" todir="${dir.test.xmlresults}">
379 <fileset dir="${dir.test.classes}">
cowtowncoderba364612008-03-24 05:59:43 +0000380 <!-- Need to exclude inner classes... -->
381 <exclude name="**/*$*.class"/>
cowtowncoder5cbf9062008-10-21 06:31:58 +0000382 <!-- And manual non-junit test classes -->
383 <exclude name="test/*.class"/>
cowtowncoderba364612008-03-24 05:59:43 +0000384 <include name="**/Test*.class"/>
385 </fileset>
386 </batchtest>
387 <formatter type="xml" />
cowtowncoderba364612008-03-24 05:59:43 +0000388 <classpath>
cowtowncoder6fe44382009-01-14 06:49:09 +0000389 <pathelement path="${dir.build.classes.core}" />
390 <pathelement path="${dir.build.classes.mapper}" />
cowtowncoder19590b92008-11-21 20:54:14 +0000391 <pathelement location="${dir.test.classes}" />
cowtowncodere7179c32009-02-16 21:39:51 +0000392 <path refid="test-libs"/>
cowtowncoderba364612008-03-24 05:59:43 +0000393 </classpath>
394 </junit>
395
cowtowncoder19590b92008-11-21 20:54:14 +0000396 <junitreport todir="${dir.test.results}">
397 <fileset dir="${dir.test.xmlresults}">
cowtowncoderba364612008-03-24 05:59:43 +0000398 <include name="TEST-*.xml" />
399 </fileset>
cowtowncoder19590b92008-11-21 20:54:14 +0000400 <report todir="${dir.test.results}" />
cowtowncoderba364612008-03-24 05:59:43 +0000401 </junitreport>
402 </target>
403
cowtowncoder5595deb2009-02-25 07:15:22 +0000404 <!-- Running a single Unit Test -->
405 <target name="test.single" depends="compile.test">
406 <fail unless="test" message="Must define -Dtest" />
407 <!-- showoutput 'yes' to allow outputting debug msgs... -->
408 <junit fork="no" maxmemory="128M" showoutput="yes" printsummary="yes">
409 <formatter type="plain" usefile="no" />
410 <test name="${test}" />
411 <classpath>
412 <pathelement path="${dir.build.classes.core}" />
413 <pathelement path="${dir.build.classes.mapper}" />
414 <pathelement location="${dir.test.classes}" />
415 <path refid="test-libs"/>
416 </classpath>
417 </junit>
418 </target>
419
420
cowtowncoderba364612008-03-24 05:59:43 +0000421</project>