You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2012/01/19 18:21:51 UTC
svn commit: r1233482 - in /maven/surefire/trunk: maven-failsafe-plugin/
maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/
maven-failsafe-plugin/src/main/mdo/
surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fix...
Author: jdcasey
Date: Thu Jan 19 17:21:50 2012
New Revision: 1233482
URL: http://svn.apache.org/viewvc?rev=1233482&view=rev
Log:
[SUREFIRE-803] Accumulate failsafe results in the failsafe-summary file instead of overwriting it. This allows multiple failsafe executions to contribute to it, and avoids masking the results of an earlier test run with those from a later one.
Added:
maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/jiras/Surefire803MultiFailsafeExecsIT.java (with props)
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/pom.xml (with props)
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/maven/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/maven/surefire/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/maven/surefire/test/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/maven/surefire/test/App.java (with props)
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/FailingTest.java (with props)
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/SucceedingTest.java (with props)
maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/TokenSurefireTest.java (with props)
Modified:
maven/surefire/trunk/maven-failsafe-plugin/pom.xml
maven/surefire/trunk/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/IntegrationTestMojo.java
maven/surefire/trunk/maven-failsafe-plugin/src/main/mdo/failsafe-summary.mdo
maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/HelperAssertions.java
maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java
maven/surefire/trunk/surefire-setup-integration-tests/pom.xml
Modified: maven/surefire/trunk/maven-failsafe-plugin/pom.xml
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/maven-failsafe-plugin/pom.xml?rev=1233482&r1=1233481&r2=1233482&view=diff
==============================================================================
--- maven/surefire/trunk/maven-failsafe-plugin/pom.xml (original)
+++ maven/surefire/trunk/maven-failsafe-plugin/pom.xml Thu Jan 19 17:21:50 2012
@@ -218,7 +218,7 @@
<models>
<model>src/main/mdo/failsafe-summary.mdo</model>
</models>
- <version>2.6.0</version>
+ <version>2.12</version>
</configuration>
</plugin>
<plugin>
Modified: maven/surefire/trunk/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/IntegrationTestMojo.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/IntegrationTestMojo.java?rev=1233482&r1=1233481&r2=1233482&view=diff
==============================================================================
--- maven/surefire/trunk/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/IntegrationTestMojo.java (original)
+++ maven/surefire/trunk/maven-failsafe-plugin/src/main/java/org/apache/maven/plugin/failsafe/IntegrationTestMojo.java Thu Jan 19 17:21:50 2012
@@ -19,12 +19,19 @@ package org.apache.maven.plugin.failsafe
* under the License.
*/
+import static org.codehaus.plexus.util.IOUtil.*;
+
+import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
+import java.io.BufferedReader;
import java.io.File;
+import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
+import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.Writer;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -45,11 +52,13 @@ import org.apache.maven.plugin.surefire.
import org.apache.maven.project.MavenProject;
import org.apache.maven.surefire.booter.ProviderConfiguration;
import org.apache.maven.surefire.failsafe.model.FailsafeSummary;
+import org.apache.maven.surefire.failsafe.model.io.xpp3.FailsafeSummaryXpp3Reader;
import org.apache.maven.surefire.failsafe.model.io.xpp3.FailsafeSummaryXpp3Writer;
import org.apache.maven.surefire.suite.RunResult;
import org.apache.maven.toolchain.ToolchainManager;
import org.codehaus.plexus.util.ReaderFactory;
import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
/**
* Run integration tests using Surefire.
@@ -712,21 +721,44 @@ public class IntegrationTestMojo
{
summaryFile.getParentFile().mkdirs();
}
+
+ FileOutputStream fout = null;
+ FileInputStream fin = null;
try
{
- FileOutputStream fileOutputStream = new FileOutputStream( summaryFile );
- BufferedOutputStream bufferedOutputStream = new BufferedOutputStream( fileOutputStream );
+ FailsafeSummary mergedSummary = summary;
+ if ( summaryFile.exists() )
+ {
+ fin = new FileInputStream( summaryFile );
+
+ mergedSummary =
+ new FailsafeSummaryXpp3Reader().read( new InputStreamReader( new BufferedInputStream( fin ),
+ getEncodingOrDefault() ) );
+
+ mergedSummary.merge( summary );
+ }
+
+ fout = new FileOutputStream( summaryFile );
+ BufferedOutputStream bufferedOutputStream = new BufferedOutputStream( fout );
Writer writer = new OutputStreamWriter( bufferedOutputStream, getEncodingOrDefault() );
FailsafeSummaryXpp3Writer xpp3Writer = new FailsafeSummaryXpp3Writer();
- xpp3Writer.write( writer, summary );
+ xpp3Writer.write( writer, mergedSummary );
writer.close();
bufferedOutputStream.close();
- fileOutputStream.close();
}
catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
+ catch ( XmlPullParserException e )
+ {
+ throw new MojoExecutionException( e.getMessage(), e );
+ }
+ finally
+ {
+ close( fin );
+ close( fout );
+ }
}
private String getEncodingOrDefault()
Modified: maven/surefire/trunk/maven-failsafe-plugin/src/main/mdo/failsafe-summary.mdo
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/maven-failsafe-plugin/src/main/mdo/failsafe-summary.mdo?rev=1233482&r1=1233481&r2=1233482&view=diff
==============================================================================
--- maven/surefire/trunk/maven-failsafe-plugin/src/main/mdo/failsafe-summary.mdo (original)
+++ maven/surefire/trunk/maven-failsafe-plugin/src/main/mdo/failsafe-summary.mdo Thu Jan 19 17:21:50 2012
@@ -55,12 +55,22 @@ under the License.
<version>2.4.3+</version>
<required>false</required>
<type>String</type>
- <description>The exception that caused surefire to bomb out</description>
+ <description>[DEPRECATED] The (original) exception that caused surefire to bomb out</description>
+ </field>
+ <field>
+ <name>exceptions</name>
+ <version>2.12+</version>
+ <required>false</required>
+ <association>
+ <type>String</type>
+ <multiplicity>*</multiplicity>
+ </association>
+ <description>The exception(s) that caused surefire to bomb out</description>
</field>
</fields>
<codeSegments>
<codeSegment>
- <version>2.6.0</version>
+ <version>2.6.0+</version>
<code><![CDATA[
/**
* Merges the summary result with this summary result.
@@ -107,10 +117,23 @@ under the License.
default:
break;
}
+
if ( this.exception == null )
{
this.exception = summary.exception;
}
+
+ if ( summary.exceptions != null )
+ {
+ if ( this.exceptions == null )
+ {
+ this.exceptions = summary.exceptions;
+ }
+ else
+ {
+ this.exceptions.addAll( summary.exceptions );
+ }
+ }
}
]]></code>
</codeSegment>
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/HelperAssertions.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/HelperAssertions.java?rev=1233482&r1=1233481&r2=1233482&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/HelperAssertions.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/HelperAssertions.java Thu Jan 19 17:21:50 2012
@@ -36,6 +36,15 @@ public class HelperAssertions
assertTestSuiteResults( total, errors, failures, skipped, suite );
}
+ /**
+ * assert that the reports in the specified testDir have the right summary statistics
+ */
+ public static void assertIntegrationTestSuiteResults( int total, int errors, int failures, int skipped, File testDir )
+ {
+ IntegrationTestSuiteResults suite = parseIntegrationTestResults( new File[] { testDir } );
+ assertTestSuiteResults( total, errors, failures, skipped, suite );
+ }
+
public static void assertTestSuiteResults( int total, int errors, int failures, int skipped,
IntegrationTestSuiteResults actualSuite )
{
@@ -56,6 +65,12 @@ public class HelperAssertions
return parseReportList( reports );
}
+ public static IntegrationTestSuiteResults parseIntegrationTestResults( File[] testDirs )
+ {
+ List<ReportTestSuite> reports = extractITReports( testDirs );
+ return parseReportList( reports );
+ }
+
/**
* Converts a list of ReportTestSuites into an IntegrationTestSuiteResults object, suitable for summary assertions
*/
@@ -94,4 +109,26 @@ public class HelperAssertions
}
return reports;
}
+
+ public static List<ReportTestSuite> extractITReports( File[] testDirs )
+ {
+ List<File> reportsDirs = new ArrayList<File>();
+ for ( File testDir : testDirs )
+ {
+ File reportsDir = new File( testDir, "target/failsafe-reports" );
+ Assert.assertTrue( "Reports directory is missing: " + reportsDir.getAbsolutePath(), reportsDir.exists() );
+ reportsDirs.add( reportsDir );
+ }
+ SurefireReportParser parser = new SurefireReportParser( reportsDirs );
+ List<ReportTestSuite> reports;
+ try
+ {
+ reports = parser.parseXMLReportFiles();
+ }
+ catch ( Exception e )
+ {
+ throw new RuntimeException( "Couldn't parse XML reports", e );
+ }
+ return reports;
+ }
}
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java?rev=1233482&r1=1233481&r2=1233482&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java Thu Jan 19 17:21:50 2012
@@ -128,6 +128,12 @@ public class OutputValidator
return this;
}
+ public OutputValidator assertIntegrationTestSuiteResults( int total, int errors, int failures, int skipped )
+ {
+ HelperAssertions.assertIntegrationTestSuiteResults( total, errors, failures, skipped, baseDir );
+ return this;
+ }
+
public TestFile getTargetFile( String fileName )
{
File targetDir = getSubFile( "target" );
Added: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/jiras/Surefire803MultiFailsafeExecsIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/jiras/Surefire803MultiFailsafeExecsIT.java?rev=1233482&view=auto
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/jiras/Surefire803MultiFailsafeExecsIT.java (added)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/jiras/Surefire803MultiFailsafeExecsIT.java Thu Jan 19 17:21:50 2012
@@ -0,0 +1,17 @@
+package org.apache.maven.surefire.its.jiras;
+
+import org.apache.maven.surefire.its.fixture.SurefireIntegrationTestCase;
+
+public class Surefire803MultiFailsafeExecsIT
+ extends SurefireIntegrationTestCase
+{
+
+ public void testSecondExecutionRunsAfterFirstExecutionFails()
+ {
+ unpack( "/surefire-803-multiFailsafeExec-failureInFirst" ).executeVerifyWithFailure().assertIntegrationTestSuiteResults( 4,
+ 0,
+ 2,
+ 0 );
+ }
+
+}
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/jiras/Surefire803MultiFailsafeExecsIT.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/pom.xml
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/pom.xml?rev=1233482&view=auto
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/pom.xml (added)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/pom.xml Thu Jan 19 17:21:50 2012
@@ -0,0 +1,80 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.apache.maven.plugins.surefire</groupId>
+ <artifactId>surefire-803-multiFailsafeExec-failureInFirst</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>surefire-803-failure-prevents-subsequent-executions</name>
+
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.8.2</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${surefire.version}</version>
+ <configuration>
+ <includes>
+ <include>**/TokenSurefireTest.java</include>
+ </includes>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ <version>${surefire.version}</version>
+ <executions>
+ <execution>
+ <id>failing</id>
+ <goals>
+ <goal>integration-test</goal>
+ </goals>
+ <configuration>
+ <includes>
+ <include>**/FailingTest.java</include>
+ </includes>
+ <excludes>
+ <exclude>**/SucceedingTest.java</exclude>
+ </excludes>
+ </configuration>
+ </execution>
+ <execution>
+ <id>succeed</id>
+ <goals>
+ <goal>integration-test</goal>
+ </goals>
+ <configuration>
+ <includes>
+ <include>**/SucceedingTest.java</include>
+ </includes>
+ <excludes>
+ <exclude>**/FailingTest.java</exclude>
+ </excludes>
+ </configuration>
+ </execution>
+ <execution>
+ <id>verify</id>
+ <goals>
+ <goal>verify</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/maven/surefire/test/App.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/maven/surefire/test/App.java?rev=1233482&view=auto
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/maven/surefire/test/App.java (added)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/maven/surefire/test/App.java Thu Jan 19 17:21:50 2012
@@ -0,0 +1,18 @@
+package org.apache.maven.surefire.test;
+
+public class App
+{
+
+ private String test = "value";
+
+ public String getTest()
+ {
+ return test;
+ }
+
+ public void setTest( final String test )
+ {
+ this.test = test;
+ }
+
+}
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/main/java/org/apache/maven/surefire/test/App.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/FailingTest.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/FailingTest.java?rev=1233482&view=auto
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/FailingTest.java (added)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/FailingTest.java Thu Jan 19 17:21:50 2012
@@ -0,0 +1,65 @@
+package org.apache.maven.surefire.test;
+
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.junit.Assert.assertThat;
+
+import org.junit.After;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.TestName;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+
+public class FailingTest
+{
+ @Rule
+ public TestName name = new TestName();
+
+ @Test
+ public void defaultTestValueIs_Value()
+ {
+ assertThat( new App().getTest(), equalTo( "wrong" ) );
+ }
+
+ @Test
+ public void setTestAndRetrieveValue()
+ {
+ final App app = new App();
+ final String val = "foo";
+
+ app.setTest( val );
+
+ assertThat( app.getTest(), equalTo( "bar" ) );
+ }
+
+ @After
+ public void writeFile()
+ throws IOException
+ {
+ final File f = new File( "target/tests-run", getClass().getName() + ".txt" );
+ f.getParentFile().mkdirs();
+
+ FileWriter w = null;
+
+ try
+ {
+ w = new FileWriter( f, true );
+ w.write( name.getMethodName() );
+ }
+ finally
+ {
+ if ( w != null )
+ {
+ try
+ {
+ w.close();
+ }
+ catch ( final IOException e )
+ {
+ }
+ }
+ }
+ }
+}
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/FailingTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/SucceedingTest.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/SucceedingTest.java?rev=1233482&view=auto
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/SucceedingTest.java (added)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/SucceedingTest.java Thu Jan 19 17:21:50 2012
@@ -0,0 +1,65 @@
+package org.apache.maven.surefire.test;
+
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.junit.Assert.assertThat;
+
+import org.junit.After;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.TestName;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+
+public class SucceedingTest
+{
+ @Rule
+ public TestName name = new TestName();
+
+ @Test
+ public void defaultTestValueIs_Value()
+ {
+ assertThat( new App().getTest(), equalTo( "value" ) );
+ }
+
+ @Test
+ public void setTestAndRetrieveValue()
+ {
+ final App app = new App();
+ final String val = "foo";
+
+ app.setTest( val );
+
+ assertThat( app.getTest(), equalTo( val ) );
+ }
+
+ @After
+ public void writeFile()
+ throws IOException
+ {
+ final File f = new File( "target/tests-run", getClass().getName() + ".txt" );
+ f.getParentFile().mkdirs();
+
+ FileWriter w = null;
+
+ try
+ {
+ w = new FileWriter( f, true );
+ w.write( name.getMethodName() );
+ }
+ finally
+ {
+ if ( w != null )
+ {
+ try
+ {
+ w.close();
+ }
+ catch ( final IOException e )
+ {
+ }
+ }
+ }
+ }
+}
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/SucceedingTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/TokenSurefireTest.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/TokenSurefireTest.java?rev=1233482&view=auto
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/TokenSurefireTest.java (added)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/TokenSurefireTest.java Thu Jan 19 17:21:50 2012
@@ -0,0 +1,21 @@
+package org.apache.maven.surefire.test;
+
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.junit.Assert.assertThat;
+
+import org.junit.After;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.TestName;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+
+public class TokenSurefireTest
+{
+ @Test
+ public void succeed()
+ {
+ }
+}
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/surefire-803-multiFailsafeExec-failureInFirst/src/test/java/org/apache/maven/surefire/test/TokenSurefireTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: maven/surefire/trunk/surefire-setup-integration-tests/pom.xml
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-setup-integration-tests/pom.xml?rev=1233482&r1=1233481&r2=1233482&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-setup-integration-tests/pom.xml (original)
+++ maven/surefire/trunk/surefire-setup-integration-tests/pom.xml Thu Jan 19 17:21:50 2012
@@ -43,6 +43,12 @@
<dependencies>
<dependency>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ <groupId>org.apache.maven.plugins</groupId>
+ <version>${project.version}</version>
+ <type>maven-plugin</type>
+ </dependency>
+ <dependency>
<artifactId>maven-surefire-report-plugin</artifactId>
<groupId>org.apache.maven.plugins</groupId>
<version>${project.version}</version>