Author: niclas Date: Sat Jun 12 02:37:17 2004 New Revision: 21125 Added: avalon/trunk/tools/magic/engine/src/test/java/ avalon/trunk/tools/magic/engine/src/test/java/org/ - copied from rev 21121, avalon/trunk/tools/magic/engine/src/test/org/ avalon/trunk/tools/magic/engine/src/test/resources/ avalon/trunk/tools/magic/engine/src/test/resources/org/ avalon/trunk/tools/magic/engine/src/test/resources/org/apache/ avalon/trunk/tools/magic/engine/src/test/resources/org/apache/avalon/ avalon/trunk/tools/magic/engine/src/test/resources/org/apache/avalon/magic/ Removed: avalon/trunk/tools/magic/engine/src/test/org/ Modified: avalon/trunk/tools/magic/engine/build.properties avalon/trunk/tools/magic/engine/build.xml avalon/trunk/tools/magic/engine/src/test/java/org/apache/avalon/magic/PluginContextTestCase.java Log: As usual, need to commit before can proceed. This is annoying.
Modified: avalon/trunk/tools/magic/engine/build.properties ============================================================================== --- avalon/trunk/tools/magic/engine/build.properties (original) +++ avalon/trunk/tools/magic/engine/build.properties Sat Jun 12 02:37:17 2004 @@ -30,3 +30,44 @@ jar.file.dir=${build.dest.dir} build.dist.dir=${build.dest.dir}/dist + +test.dir=${src.dir}/test +test.src.dir=${test.dir}/java +test.resources.dir=${test.dir}/resources +test.environment.dir=${test.dir}/environment + +test.build.dir=${build.dest.dir}/${test.dir} +test.build.src.dir=${build.dest.dir}/${test.src.dir} +test.build.resources.dir=${build.dest.dir}/${test.resources.dir} +test.build.environment.dir=${build.dest.dir}/${test.environment.dir} + +test.build.classes.dir=${build.dest.dir}/test-classes + +test.reports.dir=${build.dest.dir}/test-reports +test.fancy.reports.dir=${test.reports.dir}/html + +test.fork=true +test.compile.fork=false +test.compile.debug=true + +test.halt.on.failure=off +test.halt.on.error=off + +test.print.summary=true +test.show.output=true +test.reload.classes=true +test.filter.stack.trace=on + +test.includes=**/*TestCase.java + +test.excludes=**/Abstract*TestCase.java + +# Creation of Fancy Test Report. +# Default: false +test.fancy.report=true +test.fancy.report.format=frames + + +# To include the Fancy Report in the Distribution +# Default: false +test.fancy.report.dist=true Modified: avalon/trunk/tools/magic/engine/build.xml ============================================================================== --- avalon/trunk/tools/magic/engine/build.xml (original) +++ avalon/trunk/tools/magic/engine/build.xml Sat Jun 12 02:37:17 2004 @@ -8,6 +8,9 @@ <mkdir dir="${java.build.src.dir}" /> <mkdir dir="${java.build.classes.dir}" /> <mkdir dir="${jar.build.resources.dir}" /> + <available file="${test.src.dir}" property="test-sources-available" /> + <available file="${test.resources.dir}" property="test-resources-available" /> + <available file="${test.environment.dir}" property="test-environment-available" /> <copy todir="${build.src.dir}" filtering="on"> <fileset dir="${src.dir}" > @@ -35,8 +38,8 @@ fork="${java.compile.fork}" > <classpath> - <path location="${maven.repository}/avalon-framework/jars/avalon-framework-api-4.2.0.jar" /> - <path location="${maven.repository}/avalon-framework/jars/avalon-framework-impl-4.2.0.jar" /> + <path location="${maven.repository}/avalon/framework/jars/avalon-framework-api-4.2.0.jar" /> + <path location="${maven.repository}/avalon/framework/jars/avalon-framework-impl-4.2.0.jar" /> <path location="${maven.repository}/bsh/jars/bsh-2.0b1.jar" /> <path location="${maven.repository}/ant/jars/ant-1.6.jar" /> </classpath> @@ -44,7 +47,7 @@ </target> <target name="package" depends="build" > - <property name="jar-built-file" value="${jar.file.dir}/magic.jar" /> + <property name="jar-built-file" value="${basedir}/${jar.file.dir}/magic.jar" /> <jar destfile="${jar-built-file}" basedir="${jar.classes.dir}" manifest="${jar.manifest.file}" @@ -64,13 +67,111 @@ <fileset dir="${build.src.dir}/dist" includes="**" /> </copy> <copy todir="${build.dist.dir}/bin" > - <fileset dir="${maven.repository}/avalon-framework/jars/" includes="avalon-framework-api-4.2.0.jar" /> - <fileset dir="${maven.repository}/avalon-framework/jars/" includes="avalon-framework-impl-4.2.0.jar" /> + <fileset dir="${maven.repository}/avalon/framework/jars/" includes="avalon-framework-api-4.2.0.jar" /> + <fileset dir="${maven.repository}/avalon/framework/jars/" includes="avalon-framework-impl-4.2.0.jar" /> <fileset dir="${maven.repository}/bsh/jars/" includes="bsh-2.0b1.jar" /> </copy> <copy todir="${build.dist.dir}/bin" file="${jar-built-file}" /> <chmod file="${build.dist.dir}/bin/magic" perm="+x" /> + </target> + + <target name="test" depends="prepare, package, test-copy-resources, test-copy-environment, test-compile, test-execute, test-report" > + </target> + + <target name="test-compile" if="test-sources-available" > + <mkdir dir="${test.build.classes.dir}" /> + <javac srcdir="${test.build.src.dir}" + destdir="${test.build.classes.dir}" + debug="${test.compile.debug}" + fork="${test.compile.fork}" + > + <classpath> + <pathelement path="${jar-built-file}" /> + <pathelement path="${maven.repository}/avalon/framework/jars/avalon-framework-api-4.2.0.jar" /> + </classpath> + </javac> + </target> + + <target name="test-copy-resources" if="test-resources-available" > + <mkdir dir="${test.build.resources.dir}" /> + <copy todir="${test.build.resources.dir}" + overwrite="false" + > + <fileset dir="${test.resources.dir}" includes="**" /> + </copy> + </target> + + <target name="test-copy-environment" if="test-environment-available" > + <mkdir dir="${test.build.environment.dir}" /> + <copy todir="${test.build.environment.dir}" + overwrite="false" + > + <fileset dir="${test.environment.dir}" includes="**" /> + </copy> + </target> + + <target name="test-execute" if="test-sources-available" > + <mkdir dir="${test.build.environment.dir}/temp" /> + <mkdir dir="${test.reports.dir}" /> + <mkdir dir="${test.fancy.reports.dir}" /> + <junit + fork="${test.fork}" + printsummary="${test.print.summary}" + haltonfailure="${test.halt.on.failure}" + haltonerror="${test.halt.on.error}" + errorproperty="test-errors" + failureproperty="test-failures" + dir="${test.build.environment.dir}" + showoutput="${test.show.output}" + tempdir="${test.build.environment.dir}/temp" + reloading="${test.reload.classes}" + filtertrace="${test.filter.stack.trace}" + > + <classpath> + <pathelement path="${jar-built-file}" /> + <pathelement path="${basedir}/${test.build.classes.dir}" /> + <pathelement path="${basedir}/${test.build.resources.dir}" /> + <pathelement path="${maven.repository}/avalon/framework/jars/avalon-framework-api-4.2.0.jar" /> + </classpath> + <sysproperty key="basedir" value="${basedir}"/> + <formatter type="plain"/> + <formatter type="xml"/> + + <batchtest todir="${test.reports.dir}"> + <fileset dir="${test.build.src.dir}"> + <include name="${test.includes}"/> + <exclude name="${test.excludes}"/> + </fileset> + </batchtest> + </junit> + <condition property="test-produce-reports" > + <and> + <istrue value="${test.fancy.report}" /> + <istrue value="${test-sources-available}" /> + </and> + </condition> + </target> + + <target name="test-report" if="test-produce-reports" > + <mkdir dir="${test.reports.dir}" /> + <mkdir dir="${test.fancy.reports.dir}" /> + <junitreport todir="${test.reports.dir}" > + <fileset dir="."> + <include name="**/TEST-*.xml"/> + </fileset> + <report + format="${test.fancy.report.format}" + todir="${test.fancy.reports.dir}" + /> + </junitreport> + <fail if="test-errors" >There were Unittest ERRORS.</fail> + <fail if="test-failures" >There were Unittest FAILURES.</fail> + </target> + + <!-- Include the Fancy test report in the distribution --> + <target name="test-report-package" if="test.fancy.report.dist" > + </target> <target name="clean" depends="prepare" > Modified: avalon/trunk/tools/magic/engine/src/test/java/org/apache/avalon/magic/PluginContextTestCase.java ============================================================================== --- avalon/trunk/tools/magic/engine/src/test/org/apache/avalon/magic/PluginContextTestCase.java (original) +++ avalon/trunk/tools/magic/engine/src/test/java/org/apache/avalon/magic/PluginContextTestCase.java Sat Jun 12 02:37:17 2004 @@ -5,6 +5,7 @@ import junit.framework.TestCase; +import org.apache.tools.ant.Project; /** * @author Niclas Hedhman, [EMAIL PROTECTED] @@ -16,6 +17,9 @@ private File m_PluginDir; private File m_SystemDir; private File m_ProjectDir; + private File m_ProjectSystemDir; + private File m_TempDir; + private Project m_Project; /* * @see TestCase#setUp() @@ -35,9 +39,19 @@ m_SystemDir = new File( "target/system"); m_SystemDir.mkdir(); - - m_Context = new PluginContext( " testcase project ", m_ProjectDir, projectProps, - "testcase plugin", m_PluginDir, m_SystemDir ); + + m_Context = new PluginContext + ( + " testcase project ", + m_ProjectDir, + m_ProjectSystemDir, + projectProps, + "testcase plugin", + m_PluginDir, + m_SystemDir, + m_TempDir, + m_Project + ); m_Context.setPluginClassname( "TestCasePlugin"); } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]