1
0
espelhamento de https://github.com/eclipse-aspectj/aspectj.git sincronizado 2024-08-15 02:13:50 +02:00
org.aspectj/tests/test-other-systems.xml

1070 linhas
41 KiB
XML

<!-- -*- Mode: SGML; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -->
<!-- ========================================================================= -->
<!-- Copyright (c) 2002 Palo Alto Research Center, Incorporated (PARC). -->
<!-- All rights reserved. -->
<!-- This program and the accompanying materials are made available -->
<!-- under the terms of the Common Public License v1.0 -->
<!-- which accompanies this distribution and is available at -->
<!-- http://www.eclipse.org/legal/cpl-v10.html -->
<!-- -->
<!-- Contributors: -->
<!-- Xerox/PARC initial implementation -->
<!-- ========================================================================= -->
<!-- ============================================================== -->
<!-- - N O T E S - -->
<!-- -->
<!-- All tests use common source directory, common system classes, -->
<!-- and common temporary directories. Thus, the setup required: -->
<!-- - The temporary directories are created by the script. -->
<!-- - Build the ajctest taskdef into ${ajctest.pathelement} -->
<!-- - Build the MainWrapper into ${ajctest.mainwrapper.jar} -->
<!-- - Aspectj runtime classes must be in ${aspectjrt.jar} -->
<!-- - The source directory combines internal and external sources. -->
<!-- Internal source is from cvs, external is from a zip file, and -->
<!-- both are combined in cvs. This should be changeable with -->
<!-- only a few edits to combine in a third directory or read from -->
<!-- a single repository. Also used are rt.jar and tools.jar. -->
<!-- The jars and zips are used in-place rather than copying. -->
<!-- Also note: -->
<!-- - to avoid running the huge tests, define ${skip.hard.tests} -->
<!-- - todo: time tests and put in target description -->
<!-- -->
<!-- ============================================================== -->
<!-- @process-test ajc test-other-systems.xml test # run 3P ajc tests -->
<project name="test-other-systems" default="test" basedir=".">
<property name="project.name" value="ajctest"/>
<target name="info">
<echo>
Runs cycles of ajc/ajdoc/java on other large systems,
using taskdef in testing module. Expected and generated files:
aj-build/
jars/
testing-drivers-all.jar # taskdef and required libraries
lib/
test-other-systems/
other-systems-src.zip # sources for other systems
lib/ # libraries for sources (unused?XXX)
rt.jar
tools.jar
tests/
test-other-systems.xml # this script - run from this directory
other-systems/ # aspect sources
aj-other-systems-temp/ # temporary build files
other-systems/ # generated, contains other-systems plus library src
classes/
lib/ # copy of libraries above
rt.jar
tools.jar
</echo>
</target>
<!-- ============================================================ -->
<!-- Init -->
<!-- ============================================================ -->
<target name="init" >
<echo message="init ajctest.xml"/>
<!-- base dir for other-systems test sources -->
<property name="other-systems.base.dir"
location="${basedir}"/>
<property name="jdk.tools.jar"
location="XXXTODO_DEFINE_TOOLS.jar"/>
<property name="aspectj.modules.dir"
location="${basedir}/.."/>
<property name="aj.build.results.dir"
location="${aspectj.modules.dir}/aj-build"/>
<property name="aspectj.modules.lib.dir"
location="${aspectj.modules.dir}/lib"/>
<property name="aspectj.other-systems.lib.dir"
location="${aspectj.modules.lib.dir}/test-other-systems"/>
<!-- ============================================================ -->
<!-- Global properties - require aspectj.init -->
<!-- ============================================================ -->
<!-- base dir for our internal other-systems test sources -->
<!-- base dir for other-systems test sources -->
<!-- zip of other-systems test sources -->
<!-- temporary base dir for unzipped test data is not in build temp dir b/c costly -->
<property name="aj.otherSystems.dir"
location="${basedir}/aj-other-systems"/>
<!-- source files -->
<property name="aj.otherSystems.src.dir"
location="${aj.otherSystems.dir}/src"/>
<property name="aj.otherSystems.lib.dir"
location="${aj.otherSystems.dir}/lib"/>
<!-- temp classes dir -->
<property name="output.classes.dir"
location="${aj.otherSystems.dir}/classes"/>
<!-- run from source files directory -->
<property name="otherSystems.run.dir"
location="${aj.otherSystems.src.dir}"/>
<!-- XXX dependency on ../build/build.xml value for jar output position -->
<property name="aj.jar.dir"
location="${aj.build.results.dir}/jars"/>
<property name="aj.modules.runtime.jar"
location="${aj.jar.dir}/runtime.jar"/>
<property name="aj.modules.eajctesting.jar"
location="${aj.jar.dir}/testing-drivers-all.jar"/>
<property name="ajctest.classpath"
value="${aj.modules.eajctesting.jar}" />
<!-- unzipped libraries -->
<property name="otherSystems.src.zip"
location="${aspectj.other-systems.lib.dir}/other-systems-src.zip"/>
<!-- unused?
<property name="otherSystems.runtime.jar"
location="${aj.otherSystems.dir}/lib/rt.jar"/>
<property name="otherSystems.tools.jar"
location="${aj.otherSystems.dir}/lib/tools.jar"/>
-->
<!-- sensible alias to combined other-systems test sources -->
<property name="ajctest.src.dir"
value="${aj.otherSystems.src.dir}"/>
<!-- runtime classes passed to ajctest using classpath -->
<property name="aj.runtime.classes"
value="${aj.modules.runtime.jar}"/>
<!-- set args applied to ajc when running all tests -->
<property name="ajctest.args"
value="" />
<!-- sources installed? assume everything else is... -->
<available property="prepare.completed"
file="${aj.otherSystems.src.dir}/rsa/src/JCETest.java" />
<!-- check if testing classes are available -->
<available property="aj.modules.runtime.jar.available"
file="${aj.modules.runtime.jar}" />
<available property="aj.modules.eajctesting.jar.available"
file="${aj.modules.eajctesting.jar}" />
<available property="otherSystems.src.zip.available"
file="${otherSystems.src.zip}" />
<!-- XXX properties used in testing..Ajctest.java -->
<property name="ajctest.pathelement"
location="${aj.modules.eajctesting.jar}" />
<!-- todo: testing.jar for wrapper - only need MainWrapper classes -->
<property name="ajctest.wrapper.jar"
location="${aj.modules.eajctesting.jar}" />
<!-- echo settings that affect running -->
<echo>
"## ajctest FYI -----------------------------------"
"## skip.hard.tests: ${skip.hard.tests}"
"## ajctest.classpath: ${ajctest.classpath}"
"## ajctest.args: ${ajctest.args}"
"## ajctest.compiler: ${ajctest.compiler}"
"## ajctest.wrapper.jar: ${ajctest.wrapper.jar}"
"## ajctest -----------------------------------"
</echo>
<taskdef name="ajctest"
classname="org.aspectj.internal.tools.ant.taskdefs.Ajctest"
classpath="${ajctest.classpath}" />
<!-- setup needed directories -->
<mkdir dir="${output.classes.dir}"/>
<mkdir dir="${ajctest.src.dir}"/>
<!-- echo context -->
<!-- antcall target="echo.build.variables"/ -->
</target>
<target name="warnings" depends="init">
<fail unless="aj.modules.runtime.jar.available"
message="build runtime: ${aj.modules.runtime.jar}"/>
<fail unless="aj.modules.eajctesting.jar.available"
message="build ${aj.modules.eajctesting.jar} using
ant build.xml build-testing-drivers
"/>
<fail unless="otherSystems.src.zip.available"
message="get ${otherSystems.src.zip}"/>
</target>
<!-- ============================================================ -->
<!-- Prepare internal and external source -->
<!-- ============================================================ -->
<target name="prepare" depends="init,warnings"
unless="prepare.completed">
<copy todir="${aj.otherSystems.src.dir}" >
<fileset dir="${basedir}/other-systems"/>
</copy>
<unzip dest="${aj.otherSystems.src.dir}"
src="${otherSystems.src.zip}"/>
</target>
<!-- ============================================================ -->
<!-- Tests that pass - before refactoring (todo remove when done) -->
<!-- ============================================================ -->
<target name="temp-pass-tests"
depends="rsa,biojava,jato,kawa,
gnuprolog,jarp,jiu,
tt-bytecode,xc4j,jmeter,bcel,
jame,sablecc,examples,nsuml,jsci,
applets"/>
<!-- ============================================================ -->
<!-- Tests that pass -->
<!-- ============================================================ -->
<target name="pass-tests"
depends="rsa,biojava,jato,kawa,
gnuprolog,jarp,jiu,
tt-bytecode,xc4j,jmeter,bcel,
jame,sablecc,examples,
nsuml,jsci,
ajc, java-src,
applets, jedit"/>
<!-- ============================================================ -->
<!-- Tests that use a lot of resources -->
<!-- ============================================================ -->
<target name="hard-tests" depends="hard-ajc,hard-java-src"/>
<!-- ============================================================ -->
<!-- Test that should run last -->
<!-- ============================================================ -->
<target name="last-tests" depends="swing"/>
<!-- ============================================================ -->
<!-- All tests -->
<!-- Depends on the passing tests and failing tests -->
<!-- ============================================================ -->
<target name="test" depends="pass-tests,hard-tests,last-tests"/>
<!-- ============================================================ -->
<!-- Clean the build directory -->
<!-- todo: also clean internal of external sources? -->
<!-- ============================================================ -->
<target name="clean" unless="noclean">
<delete dir="${output.classes.dir}"/>
</target>
<!-- ============================================================ -->
<!-- compile target for the sake of orthogonal targets -->
<!-- todo: add compile of required classes? -->
<!-- ============================================================ -->
<target name="compile" >
<echo message="ajctest: no compile target"/>
</target>
<!-- ============================================================ -->
<!-- target to test ajcclean and the build script -->
<!-- ============================================================ -->
<target name="testWrap" depends="prepare"
description="(wes-only) target for testing ajclean and build scripts" >
<ajctest testId="testWrap"
dir="/home/wes/work/src"
args="${ajctest.args}"
destdir="${output.classes.dir}" >
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="TestWrap"/>
<java classname="TestWrapException"/>
<!-- testset argfiles="testwrapCompileError.lst" / -->
<testset argfiles="testwrap.lst"/>
</ajctest>
</target>
<!-- ============================================================ -->
<!-- All the projects -->
<!-- ============================================================ -->
<target name="rsa" depends="prepare">
<ajctest testId="rsa"
dir="${ajctest.src.dir}/rsa"
args="version,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
<pathelement path="${external.other-systems.runtime.jar}"/>
<pathelement path="${external.other-systems.tools.jar}"/>
</classpath>
<java classname="SignatureTest"/>
<java classname="JCETest"/>
<testset argfiles="getssets.lst"/>
<testset argfiles="main.lst"/>
</ajctest>
</target>
<target name="biojava.depends" depends="prepare">
<copy todir="${output.classes.dir}">
<fileset dir="${ajctest.src.dir}/biojava/resources" includes="**/*.xml"/>
</copy>
</target>
<target name="biojava" depends="prepare">
<ajctest testId="biojava"
dir="${ajctest.src.dir}/biojava"
args="${ajctest.args}"
destdir="${output.classes.dir}"
depends="biojava.depends">
<classpath>
<fileset dir="${ajctest.src.dir}/biojava/lib">
<include name="**/*.jar"/>
</fileset>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="org.biojava.bio.seq.db.SimpleSequenceDBInstallation"/>
<java classname="symbol.TestWindowedSymbolList"/>
<java classname="symbol.TestSimpleAlignment"/>
<java classname="symbol.TestOrderNSymbolList"/>
<java classname="symbol.TestGappedSymbolList"/>
<java classname="symbol.TestAmbiguity"/>
<java classname="seq.TestTranslation"/>
<java classname="seq.TestEmbl">
<arg line="${ajctest.src.dir}/biojava/demos/files/AL121903.embl"/>
</java>
<java classname="seq.GCContent">
<arg line="${ajctest.src.dir}/biojava/demos/files/short.fasta"/>
</java>
<java classname="gff.EmblToGffFasta">
<arg line="${ajctest.src.dir}/biojava/demos/files/AL121903.embl"/>
<arg line="${ajctest.src.dir}/biojava/demos/files/short.fasta"/>
<arg line="${ajctest.src.dir}/biojava/demos/files/out.gff"/>
</java>
<java classname="eventbasedparsing.Pdb2XML">
<arg line="${ajctest.src.dir}/biojava/demos/files/pdb/hmga_1.pdb"/>
</java>
<java classname="eventbasedparsing.BlastLike2XML">
<arg line="${ajctest.src.dir}/biojava/demos/files/ncbiblast/shortBlastn.out"/>
</java>
<java classname="dp.ViterbiAlign"
dir="${otherSystems.run.dir}" >
<!-- used as file: URL, but cygwin //c/ looks like network file system -->
<arg line="biojava/demos/files/fakepromoter.xml"/>
<arg line="biojava/demos/files/short.fasta"/>
</java>
<java classname="dp.Dice"/>
<java classname="ListChangeTypes">
<arg line="org.biojava.bio.seq.impl.SimpleSequence"/>
</java>
<testset argfiles="all.lst"/>
</ajctest>
</target>
<target name="jato.depends" depends="prepare">
<copy todir="${output.classes.dir}">
<fileset dir="${ajctest.src.dir}/jato/examples" includes="**/*.xml"/>
<fileset dir="${ajctest.src.dir}/jato/lib" includes="**/*.xml"/>
</copy>
</target>
<target name="jato" depends="prepare">
<ajctest testId="jato"
dir="${ajctest.src.dir}/jato"
args="${ajctest.args}"
destdir="${output.classes.dir}"
depends="jato.depends">
<classpath>
<fileset dir="${ajctest.src.dir}/jato/lib">
<include name="**/*.jar"/>
</fileset>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="simple.SimpleJavaToXml"/>
<!-- java classname="simple.SimpleXmlToJava"/ -->
<testset argfiles="all.lst"/>
</ajctest>
</target>
<target name="kawa" depends="prepare">
<ajctest testId="kawa"
dir="${ajctest.src.dir}/kawa"
args="${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="kawa.repl">
<arg line="-d ${output.classes.dir}"/>
<arg line="-P kawa/lib"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/std_syntax.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/characters.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/files.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/keywords.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/misc.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/numbers.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/ports.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/quantities.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/reflection.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/strings.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/syntax.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/system.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/thread.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/kawa/lib/vectors.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/testsuite/mac-test.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/testsuite/mac1.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/testsuite/obj-test.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/testsuite/test.scm"/>
<arg line="-C ${ajctest.src.dir}/kawa/testsuite/testing.scm"/>
</java>
<testset argfiles="main.lst"/>
</ajctest>
</target>
<target name="gnuprolog.depends" depends="prepare">
<copy todir="${output.classes.dir}">
<fileset dir="${ajctest.src.dir}/gnuprolog/src" includes="**/*.pro"/>
</copy>
</target>
<target name="gnuprolog" depends="prepare">
<ajctest testId="gnuprolog"
dir="${ajctest.src.dir}/gnuprolog"
args="${ajctest.args},lenient"
destdir="${output.classes.dir}"
depends="gnuprolog.depends">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<testset argfiles="main.lst"/>
</ajctest>
</target>
<target name="nsuml.depends" depends="prepare">
<copy file="${ajctest.src.dir}/nsuml/src/ru/novosoft/uml/xmi/uml13.dtd"
todir="${output.classes.dir}/ru/novosoft/uml/xmi"
/>
</target>
<target name="nsuml" depends="prepare">
<ajctest testId="nsuml"
dir="${ajctest.src.dir}/nsuml"
args="JXmx256M,${ajctest.args}"
destdir="${output.classes.dir}"
depends="nsuml.depends">
<classpath>
<fileset dir="${ajctest.src.dir}/nsuml/lib">
<include name="**/*.jar"/>
</fileset>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="EventTest"/>
<testset argfiles="all.lst"/>
</ajctest>
</target>
<target name="jarp.depends" depends="prepare">
<copy todir="${output.classes.dir}" filtering="yes">
<fileset dir="${ajctest.src.dir}/jarp/src">
<include name="**/*.properties" />
</fileset>
</copy>
<copy todir="${output.classes.dir}" filtering="no">
<fileset dir="${ajctest.src.dir}/jarp/src">
<include name="**/*.gif" />
</fileset>
</copy>
</target>
<target name="jarp" depends="prepare">
<ajctest testId="jarp"
dir="${ajctest.src.dir}/jarp"
args="${ajctest.args}"
destdir="${output.classes.dir}"
depends="jarp.depends">
<classpath>
<fileset dir="${ajctest.src.dir}/jato/lib">
<include name="jdom*.jar"/>
<include name="xerces*.jar"/>
</fileset>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="org.jarp.Driver" dir="${output.classes.dir}" fork="yes"/>
<testset argfiles="all.lst"/>
</ajctest>
</target>
<target name="jiu.depends" depends="prepare">
<delete dir="${ajctest.src.dir}/jiu/test-images/out"/>
<mkdir dir="${ajctest.src.dir}/jiu/test-images/out"/>
</target>
<target name="jiu" depends="prepare">
<ajctest testId="jiu"
dir="${ajctest.src.dir}/jiu"
args="${ajctest.args}"
destdir="${output.classes.dir}"
depends="jiu.depends">
<java classname="net.sourceforge.jiu.apps.jiu">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<arg value="-i"/>
<arg value="${ajctest.src.dir}/jiu/test-images/in/airplane.ras"/>
<arg value="-o"/>
<arg value="${ajctest.src.dir}/jiu/test-images/out/airplane.ras"/>
</java>
<java classname="net.sourceforge.jiu.apps.jiu">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<arg value="-i"/>
<arg value="${ajctest.src.dir}/jiu/test-images/in/airplane.ras"/>
<arg value="-c"/>
</java>
<testset argfiles="main.lst"/>
</ajctest>
</target>
<target name="tt-bytecode" depends="prepare">
<ajctest testId="tt-bytecode"
dir="${ajctest.src.dir}/tt-bytecode"
args="${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="com.techtrader.modules.tools.bytecode.visitor.PrettyPrintVisitor">
<arg value="java.lang.Throwable"/>
</java>
<java classname="com.techtrader.modules.tools.bytecode.visitor.PrettyPrintVisitor">
<arg value="javax.swing.JComponent"/>
</java>
<java classname="com.techtrader.modules.tools.bytecode.visitor.PrettyPrintVisitor">
<arg value="com.techtrader.modules.tools.bytecode.visitor.PrettyPrintVisitor"/>
</java>
<testset argfiles="main.lst"/>
</ajctest>
</target>
<target name="xc4j" depends="prepare">
<ajctest testId="xc4j"
dir="${ajctest.src.dir}/xc4j"
args="${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<fileset dir="${ajctest.src.dir}/xc4j/lib">
<include name="**/*.jar"/>
</fileset>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="net.sourceforge.xc4j.apps.samples.LexerTest">
<arg value="${ajctest.src.dir}/xc4j/src/net/sourceforge/xc4j/apps/samples/LexerTest.java"/>
</java>
<java classname="net.sourceforge.xc4j.apps.samples.LexerTest">
<arg value="${ant.file}"/>
</java>
<testset argfiles="all.lst"/>
</ajctest>
</target>
<target name="jmeter" depends="prepare">
<ajctest testId="jmeter"
dir="${ajctest.src.dir}/jmeter"
args="${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<fileset dir="${ajctest.src.dir}/jmeter/lib">
<include name="**/*.jar"/>
</fileset>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<testset argfiles="main.lst"/>
</ajctest>
</target>
<target name="bcel" depends="prepare">
<ajctest testId="bcel"
dir="${ajctest.src.dir}/bcel"
args="${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
<pathelement path="."/> <!-- used by Peephole... -->
</classpath>
<!-- todo: put HelloWorld output in temp, not current dir -->
<java classname="HelloWorldBuilder" />
<java classname="JasminVisitor">
<arg value="HelloWorld.class"/>
</java>
<java classname="Peephole">
<arg value="HelloWorld"/>
</java>
<java classname="helloify">
<arg value="HelloWorld.class"/>
</java>
<java classname="patchclass">
<arg value="hello"/>
<arg value="goodbye"/>
<arg value="HelloWorld.class"/>
</java>
<java classname="listclass">
<arg value="HelloWorld.class"/>
<arg value="-constants"/>
<arg value="-code"/>
<arg value="HelloWorld.class"/>
</java>
<java classname="maxstack">
<arg value="HelloWorld"/>
</java>
<testset argfiles="all.lst"/>
</ajctest>
</target>
<!-- Stopped here -->
<target name="jedit" depends="prepare">
<ajctest testId="jedit"
dir="${ajctest.src.dir}/jedit"
args="JXmx256M,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<testset argfiles="main.lst"/>
</ajctest>
</target>
<target name="jame" depends="prepare">
<ajctest testId="jame"
dir="${ajctest.src.dir}/jame"
args="${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<testset argfiles="main.lst"/>
</ajctest>
</target>
<target name="sablecc" depends="prepare">
<ajctest testId="sablecc"
dir="${ajctest.src.dir}/sablecc"
args="${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<testset argfiles="main.lst,node-aspect.lst"/>
<testset argfiles="main.lst,nodes-aspect.lst"/>
<testset argfiles="main.lst"/>
<testset argfiles="main.lst,parser-aspect.lst"/>
<testset argfiles="main.lst,lexer-aspect.lst"/>
</ajctest>
</target>
<target name="examples" depends="init">
<property name="aj.tempExamples.dir"
location="${aj.otherSystems.dir}/examples"/>
<mkdir dir="${aj.tempExamples.dir}"/>
<copy todir="${aj.tempExamples.dir}">
<fileset dir="../docs/dist/doc/examples"/>
</copy>
<!-- copy to temp.examples.dir -->
<ajctest testId="examples"
dir="${aj.tempExamples.dir}"
args="${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<testset argfiles="bean/files.lst"
classes="bean.Demo"/>
<testset argfiles="coordination/lib.lst"
classes=""/>
<testset argfiles="introduction/files.lst"
classes="introduction.CloneablePoint,
introduction.ComparablePoint,
introduction.HashablePoint,
introduction.Point"/>
<testset argfiles="observer/files.lst"
classes=""/>
<testset argfiles="spacewar/debug.lst"
classes=""/>
<testset argfiles="spacewar/demo.lst"
classes=""/>
<testset argfiles="telecom/basic.lst"
classes="telecom.BasicSimulation"/>
<testset argfiles="telecom/billing.lst"
classes="telecom.BillingSimulation" />
<testset argfiles="telecom/timing.lst"
classes="telecom.TimingSimulation" />
<testset argfiles="tjp/files.lst"
classes="tjp.Demo"/>
<testset argfiles="tracing/notrace.lst"
classes="tracing.ExampleMain"/>
<testset argfiles="tracing/tracelib.lst"
classes="tracing.lib.TraceMyClasses"/>
<testset argfiles="tracing/tracev1.lst"
classes="tracing.version1.TraceMyClasses"/>
<testset argfiles="tracing/tracev2.lst"
classes="tracing.version2.TraceMyClasses"/>
<testset argfiles="tracing/tracev3.lst"
classes="tracing.version3.TraceMyClasses"/>
</ajctest>
</target>
<target name="ajc" depends="prepare">
<echo message="tools: ${jdk.tools.jar}"/>
<ajctest testId="ajc"
dir="${ajctest.src.dir}/ajc-src"
args="time,JXmx256M,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${jdk.tools.jar}"/>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<testset argfiles="ajc.lst,mytrace.lst,../texecs.lst"/>
<testset argfiles="ajc.lst,mytrace.lst,../tsets.lst"/>
<testset argfiles="ajc.lst,mytrace.lst,../taround.lst"/>
<testset argfiles="ajc.lst,mytrace.lst,../taround.lst,../texecs.lst"/>
<testset argfiles="ajc.lst,showerror.lst"/>
</ajctest>
</target>
<target name="hard-ajc" depends="prepare"
unless="skip.hard.tests" >
<ajctest testId="hard-ajc"
dir="${ajctest.src.dir}/ajc-src"
args="time,JXmx350M,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${jdk.tools.jar}"/>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<testset argfiles="ajc.lst,mytrace.lst,../tcalls.lst"/>
<testset argfiles="ajc.lst,mytrace.lst,../treceps.lst"/>
<!--testset argfiles="ajc.lst,mytrace.lst,../tcalls.lst,../texecs.lst,../tsets.lst"/-->
<!--testset argfiles="ajc.lst,mytrace.lst,../tcalls.lst,../texecs.lst,../treceps.lst"/-->
</ajctest>
</target>
<target name="java-src.depends" depends="prepare">
<copy todir="${output.classes.dir}"
file="${ajctest.src.dir}/java-src/tests/net/HttpTest.java"/>
</target>
<target name="java-src" depends="prepare">
<ajctest testId="java-src"
dir="${ajctest.src.dir}/java-src"
args="JXmx256M,time,${ajctest.args}"
destdir="${output.classes.dir}"
depends="java-src.depends">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
<pathelement path="${external.other-systems.runtime.jar}"/>
<pathelement path="${external.other-systems.tools.jar}"/>
</classpath>
<testset argfiles="util.lst,tests.lst"/>
<testset argfiles="util.lst,tests.lst,mytrace.lst,../texecs.lst"/>
<testset argfiles="util.lst,tests.lst,mytrace.lst,../treceps.lst"/>
<testset argfiles="util.lst,tests.lst,mytrace.lst,../tsets.lst"/>
<testset argfiles="util.lst,tests.lst,mytrace.lst,../tcalls.lst"/>
<testset argfiles="util.lst,tests.lst,mytrace.lst,../taround.lst"/>
<!-- final one failing on small machines? -->
<testset argfiles="util.lst,tests.lst,mytrace.lst,../taround.lst,../texecs.lst"/>
<!-- do not run until you can run with the target classes in bootclasspath -->
</ajctest>
</target>
<target name="swingtest.depends" depends="prepare">
<mkdir dir="${output.classes.dir}/resources"/>
<copy todir="${output.classes.dir}/resources">
<fileset dir="${ajctest.src.dir}/java-src/tests/jfc/NotePad/resources"/>
</copy>
<mkdir dir="${output.classes.dir}/images"/>
<copy todir="${output.classes.dir}/images">
<fileset dir="${ajctest.src.dir}/java-src/tests/jfc/Metalworks/images"/>
</copy>
<mkdir dir="${output.classes.dir}/HelpFiles"/>
<copy todir="${output.classes.dir}/HelpFiles">
<fileset dir="${ajctest.src.dir}/java-src/tests/jfc/Metalworks/HelpFiles"/>
</copy>
<copy todir="${output.classes.dir}">
<fileset dir="${ajctest.src.dir}/java-src/tests/jfc/Metalworks"
includes="MyTheme.theme"/>
</copy>
<copy todir="${output.classes.dir}/resources">
<fileset dir="${ajctest.src.dir}/java-src/tests/jfc/Stylepad/resources"/>
</copy>
</target>
<target name="swingtest.warning">
<echo>
-------------------- INFORMATION ---------------------
The following tests will print (but NOT throw)
exceptions because of a known bug in swing:
- FileChooserDemo
- Metalworks
Update: they fail to compile unless using proper JDK libraries
-------------------- INFORMATION ---------------------
</echo>
</target>
<target name="swing" depends="prepare">
<ajctest testId="swing"
dir="${otherSystems.run.dir}"
args="JXmx256M,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
<pathelement path="${external.other-systems.runtime.jar}"/>
<pathelement path="${external.other-systems.tools.jar}"/>
</classpath>
<testset argfiles="${rundir.to.runsrcdir}/java-src/swingtest.lst,
${rundir.to.runsrcdir}/java-src/swing.lst">
<!-- omitting all swing test runs for now
<java classname="Metalworks" fork="yes" dir="${output.classes.dir}">
<jvmarg value="-Xbootclasspath/p:${output.classes.dir}"/>
</java>
<java classname="Stylepad" fork="yes">
<jvmarg value="-Xbootclasspath/p:${output.classes.dir}"/>
</java>
<java classname="FileChooserDemo" fork="yes">
<jvmarg value="-Xbootclasspath/p:${output.classes.dir}"/>
</java>
<java classname="Notepad" fork="yes">
<jvmarg value="-Xbootclasspath/p:${output.classes.dir}"/>
</java>
-->
</testset>
</ajctest>
</target>
<target name="applets.depends" depends="prepare">
<copy todir="${output.classes.dir}">
<fileset dir="${ajctest.src.dir}/applets"
includes="**/*.html,**/*.gif,**/*.au,**/*.obj,**/*.xyz"/>
</copy>
</target>
<target name="applets" depends="prepare">
<ajctest testId="applets"
dir="${ajctest.src.dir}/applets"
args="${ajctest.args}"
destdir="${output.classes.dir}"
depends="applets.depends">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="AppletTester" fork="yes">
<arg line="-basedir ${output.classes.dir}"/>
</java>
<testset argfiles="main.lst"/>
</ajctest>
</target>
<target name="hard-java-src" depends="prepare"
unless="skip.hard.tests" >
<ajctest testId="hard-java-src"
dir="${ajctest.src.dir}/java-src"
args="JXmx400M,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
<pathelement path="${external.other-systems.runtime.jar}"/>
<pathelement path="${external.other-systems.tools.jar}"/>
</classpath>
<testset argfiles="util.lst,mytrace.lst,../tcalls.lst,../texecs.lst,../treceps.lst"/>
<testset argfiles="swing.lst,mytrace.lst,../tsets.lst"/>
</ajctest>
</target>
<target name="jsci" depends="prepare">
<ajctest testId="jsci"
dir="${ajctest.src.dir}/jsci"
args="${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<fileset dir="${ajctest.src.dir}/jsci/lib">
<include name="**/*.jar"/>
</fileset>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<testset argfiles="main.lst,examples.lst"/>
<java classname="TestEigen"/>
<java classname="TestWavelet"/>
<java classname="TestWavelet2"/>
</ajctest>
</target>
<!-- ============================================================ -->
<!-- Tests for ajctest taskdef -->
<!-- ============================================================ -->
<target name="testAjctest"
depends="testAjctest.fail,testAjctest.pass"/>
<target name="testAjctest.pass"
depends="testAjctest.exit.pass,testAjctest.normal.pass"/>
<target name="testAjctest.fail"
depends="testAjctest.exception.fail,testAjctest.error.fail,
testAjctest.exit.fail,testAjctest.compileFailure.fail"/>
<target name="testAjctest.depends"
depends="prepare">
<property name="testAjctest.src.dir"
location="${basedir}/harness/ajctest"/>
</target>
<target name="testAjctest.all" depends="testAjctest.depends">
<ajctest testId="testAjctest.all"
dir="${testAjctest.src.dir}"
args="version,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="Driver"/>
<java classname="Driver">
<arg line="-exit 0"/>
</java>
<java classname="Driver">
<arg line="-exit 1"/>
</java>
<java classname="Driver">
<arg line="-error errorMessage"/>
</java>
<java classname="Driver">
<arg line="-exception exceptionMessage"/>
</java>
<testset argfiles="aspect.lst"/>
<testset argfiles="driver.lst"/>
<testset argfiles="error.lst"/>
</ajctest>
</target>
<target name="testAjctest.normal.pass" depends="testAjctest.depends">
<ajctest testId="testAjctest.normal.pass"
dir="${testAjctest.src.dir}"
args="version,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="Driver"/>
<testset argfiles="aspect.lst"/>
<testset argfiles="driver.lst"/>
</ajctest>
</target>
<target name="testAjctest.exception.fail" depends="testAjctest.depends">
<ajctest testId="testAjctest.exception.fail"
dir="${testAjctest.src.dir}"
args="version,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="Driver">
<arg line="-exception exceptionMessage"/>
</java>
<testset argfiles="aspect.lst"/>
<testset argfiles="driver.lst"/>
</ajctest>
</target>
<target name="testAjctest.error.fail" depends="testAjctest.depends">
<ajctest testId="testAjctest.error.fail"
dir="${testAjctest.src.dir}"
args="version,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="Driver">
<arg line="-error errorMessage"/>
</java>
<testset argfiles="aspect.lst"/>
<testset argfiles="driver.lst"/>
</ajctest>
</target>
<target name="testAjctest.exit.fail" depends="testAjctest.depends">
<ajctest testId="testAjctest.exit.fail"
dir="${testAjctest.src.dir}"
args="version,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="Driver">
<arg line="-exit 1"/>
</java>
<testset argfiles="aspect.lst"/>
<testset argfiles="driver.lst"/>
</ajctest>
</target>
<target name="testAjctest.exit.pass" depends="testAjctest.depends">
<ajctest testId="testAjctest.exit.pass"
dir="${testAjctest.src.dir}"
args="version,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="Driver">
<arg line="-exit 0"/>
</java>
<testset argfiles="aspect.lst"/>
<testset argfiles="driver.lst"/>
</ajctest>
</target>
<target name="testAjctest.compileFailure.fail" depends="testAjctest.depends">
<ajctest testId="testAjctest.compileFailure.fail"
dir="${testAjctest.src.dir}"
args="version,${ajctest.args}"
destdir="${output.classes.dir}">
<classpath>
<pathelement path="${output.classes.dir}"/>
<pathelement path="${aj.runtime.classes}"/>
</classpath>
<java classname="Driver"/>
<testset argfiles="error.lst"/>
</ajctest>
</target>
</project>