Author: brett
Date: Tue Nov 13 08:59:18 2007
New Revision: 594580
URL: http://svn.apache.org/viewvc?rev=594580&view=rev
Log:
[SUREFIRE-349] redirectTestOutputToFile truncates summary information
Submitted by: Paul Gier
Modified:
maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/SurefireBooter.java
maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/output/FileOutputConsumerProxy.java
Modified:
maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/SurefireBooter.java
URL:
http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/SurefireBooter.java?rev=594580&r1=594579&r2=594580&view=diff
==============================================================================
---
maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/SurefireBooter.java
(original)
+++
maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/SurefireBooter.java
Tue Nov 13 08:59:18 2007
@@ -590,9 +590,19 @@
cli.createArgument().setFile( systemProperties );
}
+
StreamConsumer out = getForkingStreamConsumer( showHeading,
showFooter, redirectTestOutputToFile );
- StreamConsumer err = getForkingStreamConsumer( showHeading,
showFooter, redirectTestOutputToFile );
+ StreamConsumer err;
+
+ if ( redirectTestOutputToFile )
+ {
+ err = out;
+ }
+ else
+ {
+ err = getForkingStreamConsumer( showHeading, showFooter,
redirectTestOutputToFile );
+ }
if ( forkConfiguration.isDebug() )
{
Modified:
maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/output/FileOutputConsumerProxy.java
URL:
http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/output/FileOutputConsumerProxy.java?rev=594580&r1=594579&r2=594580&view=diff
==============================================================================
---
maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/output/FileOutputConsumerProxy.java
(original)
+++
maven/surefire/trunk/surefire-booter/src/main/java/org/apache/maven/surefire/booter/output/FileOutputConsumerProxy.java
Tue Nov 13 08:59:18 2007
@@ -46,7 +46,9 @@
private File reportsDirectory;
private PrintWriter printWriter;
-
+
+ private StringBuffer outputBuffer = new StringBuffer();
+
/**
* Create a consumer that will write to a [EMAIL PROTECTED] File} for each
test.
* Files will be saved in working directory.
@@ -127,6 +129,12 @@
{
throw new IllegalStateException( "testSetCompleted called before
testSetStarting" );
}
+ if ( outputBuffer.length() > 0 )
+ {
+ getPrintWriter().write( outputBuffer.toString() );
+ getPrintWriter().write( LINE_SEPARATOR );
+ outputBuffer.setLength( 0 );
+ }
getPrintWriter().close();
setPrintWriter( null );
super.testSetCompleted();
@@ -139,7 +147,16 @@
{
if ( getPrintWriter() == null )
{
- throw new IllegalStateException( "consumeOutputLine called before
testSetStarting" );
+ outputBuffer.append( line );
+ outputBuffer.append( LINE_SEPARATOR );
+ return;
+ }
+
+ if ( outputBuffer.length() > 0 )
+ {
+ getPrintWriter().write( outputBuffer.toString() );
+ getPrintWriter().write( LINE_SEPARATOR );
+ outputBuffer.setLength( 0 );
}
getPrintWriter().write( line );
getPrintWriter().write( LINE_SEPARATOR );