You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by mc...@apache.org on 2004/07/09 04:43:38 UTC
svn commit: rev 22746 - avalon/trunk/tools/magic/src/main/org/apache/avalon/tools/tasks
Author: mcconnell
Date: Thu Jul 8 19:43:38 2004
New Revision: 22746
Modified:
avalon/trunk/tools/magic/src/main/org/apache/avalon/tools/tasks/JUnitTestTask.java
Log:
Add ant concat handling following suggestion from Sebastian Bazley concerning generation of unit test reports when running under gump.
Modified: avalon/trunk/tools/magic/src/main/org/apache/avalon/tools/tasks/JUnitTestTask.java
==============================================================================
--- avalon/trunk/tools/magic/src/main/org/apache/avalon/tools/tasks/JUnitTestTask.java (original)
+++ avalon/trunk/tools/magic/src/main/org/apache/avalon/tools/tasks/JUnitTestTask.java Thu Jul 8 19:43:38 2004
@@ -24,10 +24,12 @@
import org.apache.tools.ant.taskdefs.Copy;
import org.apache.tools.ant.taskdefs.Exit;
import org.apache.tools.ant.taskdefs.Javac;
+import org.apache.tools.ant.taskdefs.Concat;
import org.apache.tools.ant.taskdefs.optional.junit.BatchTest;
import org.apache.tools.ant.taskdefs.optional.junit.FormatterElement;
import org.apache.tools.ant.taskdefs.optional.junit.JUnitTask;
import org.apache.tools.ant.types.Environment;
+import org.apache.tools.ant.types.FileList;
import org.apache.tools.ant.types.FileSet;
import org.apache.tools.ant.types.Path;
@@ -149,14 +151,6 @@
}
}
- private void fail( final String message )
- {
- final Exit exit = (Exit) getProject().createTask( "fail" );
- exit.setMessage( message );
- exit.init();
- exit.execute();
- }
-
private void copyUnitTestResource( final File dest )
{
final File build = getContext().getBuildDirectory();
@@ -339,5 +333,54 @@
{
return Project.toBoolean( value );
}
+ }
+
+ private void fail( final String message )
+ {
+ final File reports = getContext().getTestReportsDirectory();
+ if( reports.exists() && getHome().isGump() )
+ {
+ FileSet list = new FileSet();
+ list.setDir( reports );
+ list.setIncludes( "**/*.txt" );
+
+ Concat concat = (Concat) getProject().createTask( "concat" );
+ concat.addFileset( list );
+ concat.addHeader( getHeader() );
+ concat.addFooter( getFooter() );
+ concat.setTaskName( getTaskName() );
+ concat.init();
+ concat.execute();
+ }
+
+ final Exit exit = (Exit) getProject().createTask( "fail" );
+ exit.setMessage( message );
+ exit.init();
+ exit.execute();
+ }
+
+ private Concat.TextElement getHeader()
+ {
+ Concat.TextElement header = new Concat.TextElement();
+ header.setProject( getProject() );
+ header.addText(
+ "-------------------------------------------------------------------------------"
++ "\n One or more errors occured during unit tests."
++ "\n Listing error reports."
++ "\n-------------------------------------------------------------------------------"
++ "\n" );
+ return header;
+ }
+
+ private Concat.TextElement getFooter()
+ {
+ Concat.TextElement footer = new Concat.TextElement();
+ footer.setProject( getProject() );
+ footer.addText(
+ "-------------------------------------------------------------------------------"
++ "\nEnd of Listing."
++ "\n-------------------------------------------------------------------------------"
++ "\n" );
+ return footer;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: cvs-unsubscribe@avalon.apache.org
For additional commands, e-mail: cvs-help@avalon.apache.org