You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kr...@apache.org on 2012/01/04 23:18:47 UTC
svn commit: r1227353 [2/2] - in
/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its:
./ fixture/ misc/
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire628ConsoleOutputBeforeAndAfterClassIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire628ConsoleOutputBeforeAndAfterClassIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire628ConsoleOutputBeforeAndAfterClassIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire628ConsoleOutputBeforeAndAfterClassIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* Asserts that console output always goes somewhere ;)
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire634UnsettableSystemPropertiesWarningIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire634UnsettableSystemPropertiesWarningIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire634UnsettableSystemPropertiesWarningIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire634UnsettableSystemPropertiesWarningIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* SUREFIRE-634 Verifies error message on unsettable system properties
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire673MockitoIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire673MockitoIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire673MockitoIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire673MockitoIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* SUREFIRE-673 Asserts that a given mockito build works as it should (classloader problem in 2.7)
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire674BuildFailingWhenErrorsIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire674BuildFailingWhenErrorsIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire674BuildFailingWhenErrorsIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire674BuildFailingWhenErrorsIT.java Wed Jan 4 22:18:44 2012
@@ -21,6 +21,7 @@ package org.apache.maven.surefire.its;
import junit.framework.Assert;
import org.apache.maven.it.VerificationException;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
/**
* SUREFIRE-674 Asserts that the build fails when tests have errors
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire674BuildFailingWhenFailsafeErrorsIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire674BuildFailingWhenFailsafeErrorsIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire674BuildFailingWhenFailsafeErrorsIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire674BuildFailingWhenFailsafeErrorsIT.java Wed Jan 4 22:18:44 2012
@@ -20,6 +20,7 @@ package org.apache.maven.surefire.its;
*/
import org.apache.maven.it.VerificationException;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
import junit.framework.Assert;
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire685CommaSeparatedIncludesIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire685CommaSeparatedIncludesIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire685CommaSeparatedIncludesIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire685CommaSeparatedIncludesIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* SUREFIRE-685 Asserts that only the specified tests are run with comma separated includes
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire697NiceSummaryIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire697NiceSummaryIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire697NiceSummaryIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire697NiceSummaryIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* SUREFIRE-697 Asserts proper truncation of long exception messages Some say testing this is a bit over the top.
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire705ParallelForkTimeoutIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire705ParallelForkTimeoutIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire705ParallelForkTimeoutIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire705ParallelForkTimeoutIT.java Wed Jan 4 22:18:44 2012
@@ -20,6 +20,7 @@ package org.apache.maven.surefire.its;
*/
import org.apache.maven.it.VerificationException;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
/**
* Test
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire733AllOverrridesCapturedIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire733AllOverrridesCapturedIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire733AllOverrridesCapturedIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire733AllOverrridesCapturedIT.java Wed Jan 4 22:18:44 2012
@@ -20,6 +20,7 @@ package org.apache.maven.surefire.its;
*/
import org.apache.maven.it.VerificationException;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
/**
* @author Kristian Rosenvold
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire735ForkFailWithRedirectConsoleOutputIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire735ForkFailWithRedirectConsoleOutputIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire735ForkFailWithRedirectConsoleOutputIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire735ForkFailWithRedirectConsoleOutputIT.java Wed Jan 4 22:18:44 2012
@@ -20,6 +20,7 @@ package org.apache.maven.surefire.its;
*/
import org.apache.maven.it.VerificationException;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
import junit.framework.Assert;
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire747MethodParallelWithSuiteCountIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire747MethodParallelWithSuiteCountIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire747MethodParallelWithSuiteCountIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire747MethodParallelWithSuiteCountIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* @author Kristian Rosenvold
*/
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire801ForkModeNoneClassLoaderIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire801ForkModeNoneClassLoaderIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire801ForkModeNoneClassLoaderIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire801ForkModeNoneClassLoaderIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* Test
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SystemPropertiesTestIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SystemPropertiesTestIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SystemPropertiesTestIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SystemPropertiesTestIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* Test system properties
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TestNgGroupsIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TestNgGroupsIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TestNgGroupsIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TestNgGroupsIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* Test that TestNG's @Test(threadPoolSize = n, invocationCount=n) causes tests to be run in parallel.
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TestNgParallelWithAnnotationsIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TestNgParallelWithAnnotationsIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TestNgParallelWithAnnotationsIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TestNgParallelWithAnnotationsIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* Test that TestNG's @Test(threadPoolSize = n, invocationCount=n) causes tests to be run in parallel.
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TimeoutForkedTestIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TimeoutForkedTestIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TimeoutForkedTestIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/TimeoutForkedTestIT.java Wed Jan 4 22:18:44 2012
@@ -20,6 +20,7 @@ package org.apache.maven.surefire.its;
*/
import org.apache.maven.it.VerificationException;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
/**
* Test
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/UseIsolatedClassLoaderIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/UseIsolatedClassLoaderIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/UseIsolatedClassLoaderIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/UseIsolatedClassLoaderIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* Test useSystemClassLoader option
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryIT.java Wed Jan 4 22:18:44 2012
@@ -22,112 +22,104 @@ package org.apache.maven.surefire.its;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
-import java.util.List;
import java.util.Properties;
-
-import org.apache.maven.it.Verifier;
-import org.apache.maven.it.util.ResourceExtractor;
-import org.apache.maven.surefire.its.misc.HelperAssertions;
+import org.apache.maven.it.VerificationException;
+import org.apache.maven.surefire.its.fixture.OutputValidator;
+import org.apache.maven.surefire.its.fixture.SurefireLauncher;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass2;
+import org.apache.maven.surefire.its.fixture.TestFile;
/**
* Test working directory configuration, SUREFIRE-416
*
* @author <a href="mailto:dfabulich@apache.org">Dan Fabulich</a>
+ * @author <a href="mailto:krosenvold@apache.org">Kristian Rosenvold</a>
*/
public class WorkingDirectoryIT
- extends AbstractSurefireIntegrationTestClass
+ extends SurefireVerifierTestClass2
{
- private File testDir;
-
- private File childTestDir;
+ public void testWorkingDirectory()
+ throws Exception
+ {
+ final SurefireLauncher unpack = getUnpacked();
+ final OutputValidator child = getPreparedChild( unpack );
+ unpack.executeTest().verifyErrorFreeLog();
+ child.assertTestSuiteResults( 1, 0, 0, 0 );
+ verifyOutputDirectory( child );
+ }
- private File outFile;
+ public void testWorkingDirectoryNoFork()
+ throws Exception
+ {
+ final SurefireLauncher unpack = getUnpacked();
+ final OutputValidator child = getPreparedChild( unpack );
+ unpack.forkNever().executeTest().verifyErrorFreeLog();
+ child.assertTestSuiteResults( 1, 0, 0, 0 );
+ verifyOutputDirectory( child );
+ }
- public void setUp()
- throws IOException
+ public void testWorkingDirectoryChildOnly()
+ throws Exception
{
- testDir = ResourceExtractor.simpleExtractResources( getClass(), "/working-directory" );
- childTestDir = new File( testDir, "child" );
- File targetDir = new File( childTestDir, "target" );
- outFile = new File( targetDir, "out.txt" );
- //noinspection ResultOfMethodCallIgnored
- outFile.delete();
+ final SurefireLauncher unpack = getUnpacked();
+ final SurefireLauncher child = unpack.getSubProjectLauncher( "child" );
+ //child.getTargetFile( "out.txt" ).delete();
+ final OutputValidator outputValidator = child.executeTest().assertTestSuiteResults( 1, 0, 0, 0 );
+ verifyOutputDirectory( outputValidator );
}
- public void testWorkingDirectory()
+ public void testWorkingDirectoryChildOnlyNoFork()
throws Exception
{
- Verifier verifier = new Verifier( testDir.getAbsolutePath() );
- this.executeGoal( verifier, "test" );
- verifier.verifyErrorFreeLog();
- verifier.resetStreams();
- HelperAssertions.assertTestSuiteResults( 1, 0, 0, 0, childTestDir );
- verifyOutputDirectory( childTestDir );
+ final SurefireLauncher unpack = getUnpacked();
+ final SurefireLauncher child = unpack.getSubProjectLauncher( "child" );
+ //child.getTargetFile( "out.txt" ).delete();
+ final OutputValidator outputValidator = child.forkNever().executeTest().assertTestSuiteResults( 1, 0, 0, 0 );
+ verifyOutputDirectory( outputValidator );
+ }
+
+ private SurefireLauncher getUnpacked()
+ throws VerificationException, IOException
+ {
+ return unpack( "working-directory" );
+ }
+
+ private OutputValidator getPreparedChild( SurefireLauncher unpack )
+ throws VerificationException
+ {
+ final OutputValidator child = unpack.getSubProjectValidator( "child" );
+ getOutFile(child).delete();
+ return child;
+ }
+
+
+ private TestFile getOutFile(OutputValidator child ){
+ return child.getTargetFile( "out.txt" );
}
- public void verifyOutputDirectory( File childTestDir )
+ public void verifyOutputDirectory( OutputValidator childTestDir )
throws IOException
{
+ final TestFile outFile = getOutFile( childTestDir );
assertTrue( "out.txt doesn't exist: " + outFile.getAbsolutePath(), outFile.exists() );
Properties p = new Properties();
- FileInputStream is = new FileInputStream( outFile );
+ FileInputStream is = outFile.getFileInputStream();
p.load( is );
is.close();
String userDirPath = p.getProperty( "user.dir" );
assertNotNull( "user.dir was null in property file", userDirPath );
File userDir = new File( userDirPath );
// test if not a symlink
- if ( childTestDir.getCanonicalFile().equals( childTestDir.getAbsoluteFile() ) )
+ if ( childTestDir.getBaseDir().equals( childTestDir.getBaseDir().getAbsoluteFile() ) )
{
- assertEquals( "wrong user.dir ! symlink ", childTestDir.getAbsolutePath(), userDir.getAbsolutePath() );
+ assertEquals( "wrong user.dir ! symlink ", childTestDir.getBaseDir().getAbsolutePath(), userDir.getAbsolutePath() );
}
else
{
- assertEquals( "wrong user.dir symlink ", childTestDir.getCanonicalPath(), userDir.getCanonicalPath() );
+ assertEquals( "wrong user.dir symlink ", childTestDir.getBaseDir().getCanonicalPath(), userDir.getCanonicalPath() );
}
}
- public void testWorkingDirectoryNoFork()
- throws Exception
- {
- Verifier verifier = new Verifier( testDir.getAbsolutePath() );
- List<String> goals = this.getInitialGoals();
- goals.add( "test" );
- goals.add( "-DforkMode=never" );
- executeGoals( verifier, goals );
- verifier.verifyErrorFreeLog();
- verifier.resetStreams();
-
- HelperAssertions.assertTestSuiteResults( 1, 0, 0, 0, childTestDir );
- verifyOutputDirectory( childTestDir );
- }
-
- public void testWorkingDirectoryChildOnly()
- throws Exception
- {
- Verifier verifier = new Verifier( childTestDir.getAbsolutePath() );
- this.executeGoal( verifier, "test" );
- verifier.verifyErrorFreeLog();
- verifier.resetStreams();
-
- HelperAssertions.assertTestSuiteResults( 1, 0, 0, 0, childTestDir );
- verifyOutputDirectory( childTestDir );
- }
-
- public void testWorkingDirectoryChildOnlyNoFork()
- throws Exception
- {
- Verifier verifier = new Verifier( childTestDir.getAbsolutePath() );
- List<String> goals = this.getInitialGoals();
- goals.add( "test" );
- goals.add( "-DforkMode=never" );
- executeGoals( verifier, goals );
- verifier.verifyErrorFreeLog();
- verifier.resetStreams();
-
- HelperAssertions.assertTestSuiteResults( 1, 0, 0, 0, childTestDir );
- verifyOutputDirectory( childTestDir );
- }
}
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryIsInvalidPropertyIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryIsInvalidPropertyIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryIsInvalidPropertyIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryIsInvalidPropertyIT.java Wed Jan 4 22:18:44 2012
@@ -1,38 +1,20 @@
package org.apache.maven.surefire.its;
-import java.io.File;
-import java.io.IOException;
-
-import org.apache.maven.it.VerificationException;
-import org.apache.maven.it.Verifier;
-import org.apache.maven.it.util.ResourceExtractor;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass2;
/**
* Test when the configured working directory is an invalid property, SUREFIRE-715
+ *
+ * @author <a href="mailto:krosenvold@apache.org">Kristian Rosenvold</a>
*/
public class WorkingDirectoryIsInvalidPropertyIT
- extends AbstractSurefireIntegrationTestClass
+ extends SurefireVerifierTestClass2
{
- private File testDir;
-
- public void setUp()
- throws IOException
- {
- testDir = ResourceExtractor.simpleExtractResources( getClass(), "/working-directory-is-invalid-property" );
- }
-
public void testWorkingDirectory()
throws Exception
{
- Verifier verifier = new Verifier( testDir.getAbsolutePath() );
- try
- {
- executeGoal( verifier, "test" );
- }
- catch ( VerificationException e )
- {
- }
- verifier.verifyTextInLog( "workingDirectory cannot be null" );
- verifier.resetStreams();
+ unpack( "working-directory-is-invalid-property" )
+ .executeTestWithFailure()
+ .verifyTextInLog( "workingDirectory cannot be null" );
}
}
\ No newline at end of file
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryMissingIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryMissingIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryMissingIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/WorkingDirectoryMissingIT.java Wed Jan 4 22:18:44 2012
@@ -19,6 +19,8 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
+
/**
* Test when the configured working directory does not exist, SUREFIRE-607
*
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/XmlReporterRunTimeIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/XmlReporterRunTimeIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/XmlReporterRunTimeIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/XmlReporterRunTimeIT.java Wed Jan 4 22:18:44 2012
@@ -21,6 +21,7 @@ package org.apache.maven.surefire.its;
import java.io.File;
import java.util.List;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
import org.apache.maven.surefire.its.misc.HelperAssertions;
import org.apache.maven.surefire.its.misc.ReportTestSuite;
Copied: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java (from r1226944, maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifier.java)
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java?p2=maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java&p1=maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifier.java&r1=1226944&r2=1227353&rev=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifier.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java Wed Jan 4 22:18:44 2012
@@ -1,4 +1,4 @@
-package org.apache.maven.surefire.its;
+package org.apache.maven.surefire.its.fixture;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -31,17 +31,17 @@ import org.apache.maven.surefire.its.mis
*
* @author Kristian Rosenvold
*/
-public class SurefireVerifier
+public class OutputValidator
{
- private final Verifier verifier;
+ protected final Verifier verifier;
- private final File baseDir;
+ protected final File baseDir;
- public static SurefireVerifier fromDirectory(File testDir)
+ public static OutputValidator fromDirectory(File testDir)
{
try
{
- return new SurefireVerifier( new Verifier( testDir.getAbsolutePath()) , testDir);
+ return new OutputValidator( new Verifier( testDir.getAbsolutePath()) );
}
catch ( VerificationException e )
{
@@ -50,10 +50,11 @@ public class SurefireVerifier
}
- public SurefireVerifier( Verifier verifier, File baseDir )
+ public OutputValidator( Verifier verifier )
{
this.verifier = verifier;
- this.baseDir = baseDir;
+ this.baseDir = new File( verifier.getBasedir());
+
}
public void assertFilePresent( String file )
@@ -82,17 +83,19 @@ public class SurefireVerifier
verifier.resetStreams();
}
- public void verifyTextInLog( String text )
+ public OutputValidator verifyTextInLog( String text )
throws VerificationException
{
verifier.verifyTextInLog( text );
+ return this;
}
- public void verifyErrorFreeLog()
+ public OutputValidator verifyErrorFreeLog()
throws VerificationException
{
verifier.verifyErrorFreeLog();
+ return this;
}
public List loadFile( String basedir, String filename, boolean hasCommand )
@@ -101,9 +104,10 @@ public class SurefireVerifier
return verifier.loadFile( basedir, filename, hasCommand );
}
- public List loadFile( File file, boolean hasCommand )
+ public List<String> loadFile( File file, boolean hasCommand )
throws VerificationException
{
+ //noinspection unchecked
return verifier.loadFile( file, hasCommand );
}
@@ -118,6 +122,18 @@ public class SurefireVerifier
return verifier.getBasedir();
}
+ /**
+ * Returns a file, referenced from the extracted root (where pom.xml is located)
+ *
+ * @param path The subdirectory under basedir
+ * @return A file
+ */
+ protected File getSubFile( String path )
+ {
+ return new File( getBasedir(), path );
+ }
+
+
public String getMavenVersion()
throws VerificationException
{
@@ -131,12 +147,20 @@ public class SurefireVerifier
}
- public void assertTestSuiteResults( int total, int errors, int failures, int skipped )
+ public OutputValidator assertTestSuiteResults( int total, int errors, int failures, int skipped )
{
HelperAssertions.assertTestSuiteResults( total, errors, failures, skipped, baseDir );
+ return this;
}
-
-
-
+ public TestFile getTargetFile( String fileName )
+ {
+ File targetDir = getSubFile( "target" );
+ return new TestFile(new File( targetDir, fileName ), this);
+ }
+
+ public File getBaseDir()
+ {
+ return baseDir;
+ }
}
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/OutputValidator.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireLauncher.java (from r1226944, maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifierTestClass.java)
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireLauncher.java?p2=maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireLauncher.java&p1=maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifierTestClass.java&r1=1226944&r2=1227353&rev=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifierTestClass.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireLauncher.java Wed Jan 4 22:18:44 2012
@@ -1,4 +1,4 @@
-package org.apache.maven.surefire.its;
+package org.apache.maven.surefire.its.fixture;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -30,15 +30,14 @@ import org.apache.maven.artifact.version
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
import org.apache.maven.artifact.versioning.VersionRange;
import org.apache.maven.it.VerificationException;
+import org.apache.maven.it.Verifier;
import org.apache.maven.it.util.FileUtils;
import org.apache.maven.it.util.ResourceExtractor;
import junit.framework.Assert;
-import junit.framework.TestCase;
/**
- * Contains commonly used features for most tests, encapsulating
- * common use cases.
+ * Encapsulate all needed features to start a surefire run
* <p/>
* Also includes thread-safe access to the extracted resource
* files, which AbstractSurefireIntegrationTestClass does not.
@@ -46,16 +45,11 @@ import junit.framework.TestCase;
*
* @author Kristian Rosenvold
*/
-public abstract class SurefireVerifierTestClass
- extends TestCase
+public class SurefireLauncher
{
- private final File testDir;
-
private final List<String> cliOptions = new ArrayList<String>();
- private final List<String> goals;
-
- private final SurefireVerifier defaultVerifier;
+ private final List<String> goals = getInitialGoals();
private final Map<String, String> envvars = new HashMap<String, String>();
@@ -63,25 +57,41 @@ public abstract class SurefireVerifierTe
private final String surefireVersion = System.getProperty( "surefire.version" );
- protected SurefireVerifierTestClass( String testProject )
+ private final Verifier verifier;
+
+ private final OutputValidator surefireVerifier;
+
+ private boolean failIfNoTests;
+
+
+ public SurefireLauncher( Class testClass, String resourceName )
+ throws VerificationException, IOException
{
- try
- {
- testDir = simpleExtractResources( getClass(), testProject );
- this.goals = getInitialGoals();
- this.defaultVerifier = SurefireVerifier.fromDirectory(testDir );
- }
- catch ( IOException e )
- {
- throw new RuntimeException( e );
- }
+ this( createVerifier( testClass, resourceName ) );
+
+ }
+
+ protected SurefireLauncher( Verifier verifier )
+ {
+ this.verifier = verifier;
+ this.surefireVerifier = new OutputValidator( verifier );
+ goals.clear();
+ goals.addAll( getInitialGoals() );
+ cliOptions.clear();
}
- private File simpleExtractResources( Class<?> cl, String resourcePath )
+ private static Verifier createVerifier(Class testClass, String resourceName)
+ throws IOException, VerificationException
+ {
+ return new Verifier( simpleExtractResources( testClass, resourceName).getAbsolutePath() );
+ }
+
+ private static File simpleExtractResources( Class<?> cl, String resourcePath )
throws IOException
{
+ if (!resourcePath.startsWith( "/" )) resourcePath = "/" + resourcePath;
String tempDirPath = System.getProperty( "maven.test.tmpdir", System.getProperty( "java.io.tmpdir" ) );
- File tempDir = new File( tempDirPath, this.getClass().getSimpleName() );
+ File tempDir = new File( tempDirPath, cl.getSimpleName() );
File testDir = new File( tempDir, resourcePath );
FileUtils.deleteDirectory( testDir );
@@ -95,6 +105,18 @@ public abstract class SurefireVerifierTe
cliOptions.clear();
}
+ public SurefireLauncher getSubProjectLauncher(String subProject)
+ throws VerificationException
+ {
+ final File subFile = surefireVerifier.getSubFile( subProject );
+ return new SurefireLauncher( new Verifier( subFile.getAbsolutePath() ));
+ }
+ public OutputValidator getSubProjectValidator( String subProject )
+ throws VerificationException
+ {
+ final File subFile = surefireVerifier.getSubFile( subProject );
+ return new OutputValidator( new Verifier( subFile.getAbsolutePath() ));
+ }
protected void addEnvVar( String key, String value )
{
@@ -127,181 +149,148 @@ public abstract class SurefireVerifierTe
return goals1;
}
- /**
- * Returns a file, referenced from the extracted root (where pom.xml is located)
- *
- * @param path The subdirectory under basedir
- * @return A file
- */
- protected File getSubFile( String path )
- {
- return new File( testDir, path );
- }
-
- protected void assertPresent( File file )
+ public void assertPresent( File file )
{
- defaultVerifier.assertFilePresent( file.getAbsolutePath() );
+ verifier.assertFilePresent( file.getAbsolutePath() );
}
- protected void assertNotPresent( File file )
+ public void assertNotPresent( File file )
{
- defaultVerifier.assertFileNotPresent( file.getAbsolutePath() );
+ verifier.assertFileNotPresent( file.getAbsolutePath() );
}
- protected void showErrorStackTraces()
+ public SurefireLauncher showErrorStackTraces()
{
cliOptions.add( "-e" );
+ return this;
}
- protected void debugLogging()
+ public SurefireLauncher debugLogging()
{
cliOptions.add( "-X" );
+ return this;
}
- protected void failNever()
+ public SurefireLauncher failNever()
{
cliOptions.add( "-fn" );
+ return this;
+
+ }
+
+ public SurefireLauncher groups(String groups){
+ goals.add( "-Dgroups=" + groups );
+ return this;
}
- protected SurefireVerifierTestClass addGoal( String goal )
+
+ public SurefireLauncher addGoal( String goal )
{
goals.add( goal );
return this;
}
- protected SurefireVerifier executeTest()
+ public OutputValidator executeTest()
throws VerificationException
{
return execute( "test" );
}
- protected SurefireVerifier executeVerify()
+ public OutputValidator executeInstall()
+ throws VerificationException
+ {
+ return execute( "install" );
+ }
+
+ public OutputValidator executeTestWithFailure()
+ {
+ try {
+ execute( "test" );
+ } catch (VerificationException ignore) {
+ return surefireVerifier;
+ }
+ throw new RuntimeException( "Expecting build failure, got none!" );
+ }
+
+ protected OutputValidator executeVerify()
throws VerificationException
{
return execute( "verify" );
}
- protected SurefireVerifier execute( String goal )
+ private OutputValidator execute( String goal )
throws VerificationException
{
addGoal( goal );
- defaultVerifier.setCliOptions( cliOptions );
+ verifier.setCliOptions( cliOptions );
try
{
- defaultVerifier.executeGoals( goals, envvars );
- return defaultVerifier;
+ verifier.executeGoals( goals, envvars );
+ return surefireVerifier;
}
finally
{
- defaultVerifier.resetStreams();
+ verifier.resetStreams();
}
}
- protected File getSurefireReportsFile( String fileName )
- {
- File targetDir = getSubFile( "target/surefire-reports" );
- return new File( targetDir, fileName );
- }
- protected File getSiteFile( String fileName )
+ public SurefireLauncher printSummary( boolean printsummary )
{
- File targetDir = getSubFile( "target/site" );
- return new File( targetDir, fileName );
+ return addGoal( "-DprintSummary=" + printsummary );
}
- protected File getTargetFile( String fileName )
+ public SurefireLauncher redirectToFileReally( boolean redirect )
{
- File targetDir = getSubFile( "target" );
- return new File( targetDir, fileName );
+ return addGoal( "-Dmaven.test.redirectTestOutputToFile=" + redirect );
}
- protected File getSiteFile( String moduleName, String fileName )
+ public SurefireLauncher redirectToFile( boolean redirect )
{
- File targetDir = getSubFile( moduleName + "/target/site" );
- return new File( targetDir, fileName );
- }
-
- protected void printSummary( boolean printsummary )
- {
- addGoal( "-DprintSummary=" + printsummary );
- }
-
- protected void redirectToFileReally( boolean redirect )
- {
- addGoal( "-Dmaven.test.redirectTestOutputToFile=" + redirect );
- }
-
- protected void redirectToFile( boolean redirect )
- {
- redirectToFileReally( redirect );
+ return redirectToFileReally( redirect );
//addGoal( "-Dredirect.to.file=" + redirect );
}
- protected void forkOnce()
+ public SurefireLauncher forkOnce()
{
- forkMode( "once" );
+ return forkMode( "once" );
}
- protected void forkNever()
+ public SurefireLauncher forkNever()
{
- forkMode( "never" );
+ return forkMode( "never" );
}
- protected void forkAlways()
+ public SurefireLauncher forkAlways()
{
- forkMode( "always" );
+ return forkMode( "always" );
}
- protected void forkMode( String forkMode )
+ public SurefireLauncher forkMode( String forkMode )
{
- addGoal( "-DforkMode=" + forkMode );
+ return addGoal( "-DforkMode=" + forkMode );
}
- protected void runOrder( String runOrder )
+ public SurefireLauncher runOrder( String runOrder )
{
- addGoal( "-DrunOrder=" + runOrder);
+ return addGoal( "-DrunOrder=" + runOrder);
}
- protected void failIfNoTests( boolean fail )
+ public SurefireLauncher failIfNoTests( boolean fail )
{
- addGoal( "-DfailIfNoTests=" + fail );
+ this.failIfNoTests = fail;
+ return addGoal( "-DfailIfNoTests=" + fail );
}
- protected void activateProfile( String profile )
+ public SurefireLauncher activateProfile( String profile )
{
- addGoal( "-P" + profile );
+ return addGoal( "-P" + profile );
}
- public void assertTestSuiteResults( int total, int errors, int failures, int skipped )
- {
- getDefaultVerifier().assertTestSuiteResults( total, errors, failures, skipped );
- }
-
- public void verifyTextInLog( String text )
- throws VerificationException
- {
- defaultVerifier.verifyTextInLog( text );
- }
-
- protected void verifyErrorFreeLog()
- throws VerificationException
- {
- defaultVerifier.verifyErrorFreeLog();
- }
-
- protected SurefireVerifier getDefaultVerifier()
- {
- return defaultVerifier;
- }
-
- public File getTestDir()
- {
- return testDir;
- }
protected boolean assertContainsText( File file, String text )
throws VerificationException
{
- final List<String> list = getDefaultVerifier().loadFile( file, false );
+ final List<String> list = surefireVerifier.loadFile( file, false );
for ( String line : list )
{
if ( line.contains( text ) )
@@ -334,16 +323,16 @@ public abstract class SurefireVerifierTe
private List<String> getLog()
throws VerificationException
{
- return defaultVerifier.loadFile( defaultVerifier.getBasedir(), defaultVerifier.getLogFileName(), false );
+ return verifier.loadFile( verifier.getBasedir(), verifier.getLogFileName(), false );
}
- private DefaultArtifactVersion getMavenVersion()
+ private DefaultArtifactVersion getMavenArtifacteVersion()
{
try
{
- String v = defaultVerifier.getMavenVersion();
+ String v = verifier.getMavenVersion();
// NOTE: If the version looks like "${...}" it has been configured from an undefined expression
if ( v != null && v.length() > 0 && !v.startsWith( "${" ) )
{
@@ -376,7 +365,7 @@ public abstract class SurefireVerifierTe
"Invalid version range: " + versionRangeStr ).initCause( e );
}
- ArtifactVersion version = getMavenVersion();
+ ArtifactVersion version = getMavenArtifacteVersion();
if ( version != null )
{
return versionRange.containsVersion( version );
@@ -408,36 +397,47 @@ public abstract class SurefireVerifierTe
+ ":failsafe-report-only";
}
- protected void parallel( String parallel )
+ public SurefireLauncher parallel( String parallel )
{
- addD( "parallel", parallel );
+ return addD( "parallel", parallel );
}
- protected void parallelClasses()
+ public SurefireLauncher parallelClasses()
{
- parallel( "classes" );
+ return parallel( "classes" );
}
- protected void parallelMethods()
+ public SurefireLauncher parallelMethods()
{
- parallel( "methods" );
+ return parallel( "methods" );
}
- protected void addD( String variable, String value )
+ public SurefireLauncher addD( String variable, String value )
+ {
+ return addGoal( "-D" + variable + "=" + value );
+ }
+
+ public SurefireLauncher setGroups( String groups )
{
- addGoal( "-D" + variable + "=" + value );
+ return addD( "groups", groups );
}
- public void setGroups( String groups )
+ public SurefireLauncher setExcludedGroups( String excludedGroups )
{
- addD( "groups", groups );
+ return addD( "excludedGroups", excludedGroups );
}
- public void setExcludedGroups( String excludedGroups )
+ public SurefireLauncher setEOption()
{
- addD( "excludedGroups", excludedGroups );
+ cliOptions.add( "-e" );
+ return this;
}
+
+ public boolean isFailIfNoTests()
+ {
+ return failIfNoTests;
+ }
}
Copied: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireVerifierTestClass.java (from r1226944, maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifierTestClass.java)
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireVerifierTestClass.java?p2=maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireVerifierTestClass.java&p1=maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifierTestClass.java&r1=1226944&r2=1227353&rev=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifierTestClass.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireVerifierTestClass.java Wed Jan 4 22:18:44 2012
@@ -1,4 +1,4 @@
-package org.apache.maven.surefire.its;
+package org.apache.maven.surefire.its.fixture;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -55,7 +55,7 @@ public abstract class SurefireVerifierTe
private final List<String> goals;
- private final SurefireVerifier defaultVerifier;
+ private final OutputValidator defaultVerifier;
private final Map<String, String> envvars = new HashMap<String, String>();
@@ -69,7 +69,7 @@ public abstract class SurefireVerifierTe
{
testDir = simpleExtractResources( getClass(), testProject );
this.goals = getInitialGoals();
- this.defaultVerifier = SurefireVerifier.fromDirectory(testDir );
+ this.defaultVerifier = OutputValidator.fromDirectory( testDir );
}
catch ( IOException e )
{
@@ -169,19 +169,28 @@ public abstract class SurefireVerifierTe
return this;
}
- protected SurefireVerifier executeTest()
+ protected OutputValidator executeTest()
throws VerificationException
{
return execute( "test" );
}
- protected SurefireVerifier executeVerify()
+ protected OutputValidator executeTestWithFailure()
+ {
+ try {
+ execute( "test" );
+ } catch (VerificationException ignore) {
+ }
+ return getDefaultVerifier();
+ }
+
+ protected OutputValidator executeVerify()
throws VerificationException
{
return execute( "verify" );
}
- protected SurefireVerifier execute( String goal )
+ protected OutputValidator execute( String goal )
throws VerificationException
{
addGoal( goal );
@@ -288,7 +297,7 @@ public abstract class SurefireVerifierTe
defaultVerifier.verifyErrorFreeLog();
}
- protected SurefireVerifier getDefaultVerifier()
+ protected OutputValidator getDefaultVerifier()
{
return defaultVerifier;
}
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireVerifierTestClass.java
------------------------------------------------------------------------------
svn:eol-style = native
Copied: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireVerifierTestClass2.java (from r1226944, maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire733AllOverrridesCapturedIT.java)
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireVerifierTestClass2.java?p2=maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireVerifierTestClass2.java&p1=maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire733AllOverrridesCapturedIT.java&r1=1226944&r2=1227353&rev=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/Surefire733AllOverrridesCapturedIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/SurefireVerifierTestClass2.java Wed Jan 4 22:18:44 2012
@@ -1,4 +1,4 @@
-package org.apache.maven.surefire.its;
+package org.apache.maven.surefire.its.fixture;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -19,23 +19,27 @@ package org.apache.maven.surefire.its;
* under the License.
*/
+import java.io.IOException;
import org.apache.maven.it.VerificationException;
+import junit.framework.TestCase;
+
/**
+ * Contains commonly used features for most tests, encapsulating
+ * common use cases.
+ * <p/>
+ * Also includes thread-safe access to the extracted resource
+ * files, which AbstractSurefireIntegrationTestClass does not.
+ * Thread safe only for running in "classes" mode.
+ *
* @author Kristian Rosenvold
*/
-public class Surefire733AllOverrridesCapturedIT
- extends SurefireVerifierTestClass
+public abstract class SurefireVerifierTestClass2
+ extends TestCase
{
- public Surefire733AllOverrridesCapturedIT()
- {
- super( "/surefire-733-allOverridesCaptured" );
- }
-
- public void testLogOutput()
- throws VerificationException
+ public SurefireLauncher unpack( String projectName )
+ throws VerificationException, IOException
{
- executeTest();
- verifyTextInLog( "abc" );
+ return new SurefireLauncher( this.getClass(), projectName );
}
}
Added: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/TestFile.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/TestFile.java?rev=1227353&view=auto
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/TestFile.java (added)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/TestFile.java Wed Jan 4 22:18:44 2012
@@ -0,0 +1,69 @@
+package org.apache.maven.surefire.its.fixture;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+
+import static junit.framework.Assert.assertTrue;
+
+/**
+ * @author Kristian Rosenvold
+ */
+public class TestFile {
+
+ private final File file;
+
+ private final OutputValidator surefireVerifier;
+
+ public TestFile( File file, OutputValidator surefireVerifier ) {
+ this.file = file;
+ this.surefireVerifier = surefireVerifier;
+ }
+
+ public OutputValidator assertFileExists()
+ {
+ assertTrue( "File doesn't exist: " + file.getAbsolutePath(), file.exists() );
+ return surefireVerifier;
+ }
+
+ public void delete()
+ {
+ //noinspection ResultOfMethodCallIgnored
+ file.delete();
+ }
+
+ public String getAbsolutePath()
+ {
+ return file.getAbsolutePath();
+ }
+
+ public boolean exists()
+ {
+ return file.exists();
+ }
+
+ public FileInputStream getFileInputStream()
+ throws FileNotFoundException
+ {
+ return new FileInputStream( file );
+ }
+}
Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/fixture/TestFile.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire740TruncatedCommaIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire740TruncatedCommaIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire740TruncatedCommaIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire740TruncatedCommaIT.java Wed Jan 4 22:18:44 2012
@@ -20,7 +20,7 @@ package org.apache.maven.surefire.its.mi
import java.io.File;
-import org.apache.maven.surefire.its.SurefireVerifierTestClass;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
/**
* Test Surefire-740 Truncated comma with non us locale
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire763EnvironmentForkModeIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire763EnvironmentForkModeIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire763EnvironmentForkModeIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire763EnvironmentForkModeIT.java Wed Jan 4 22:18:44 2012
@@ -19,7 +19,7 @@ package org.apache.maven.surefire.its.mi
*/
-import org.apache.maven.surefire.its.SurefireVerifierTestClass;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
/**
* SUREFIRE-674 Asserts that the build fails when tests have errors
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772BothReportsIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772BothReportsIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772BothReportsIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772BothReportsIT.java Wed Jan 4 22:18:44 2012
@@ -20,7 +20,7 @@ package org.apache.maven.surefire.its.mi
import org.apache.commons.io.FileUtils;
-import org.apache.maven.surefire.its.SurefireVerifierTestClass;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
import java.io.File;
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772NoFailsafeReportsIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772NoFailsafeReportsIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772NoFailsafeReportsIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772NoFailsafeReportsIT.java Wed Jan 4 22:18:44 2012
@@ -20,7 +20,7 @@ package org.apache.maven.surefire.its.mi
import org.apache.commons.io.FileUtils;
-import org.apache.maven.surefire.its.SurefireVerifierTestClass;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
import java.io.File;
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772NoSurefireReportsIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772NoSurefireReportsIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772NoSurefireReportsIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772NoSurefireReportsIT.java Wed Jan 4 22:18:44 2012
@@ -20,7 +20,7 @@ package org.apache.maven.surefire.its.mi
import org.apache.commons.io.FileUtils;
-import org.apache.maven.surefire.its.SurefireVerifierTestClass;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
import java.io.File;
Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772SpecifiedReportsIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772SpecifiedReportsIT.java?rev=1227353&r1=1227352&r2=1227353&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772SpecifiedReportsIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/misc/Surefire772SpecifiedReportsIT.java Wed Jan 4 22:18:44 2012
@@ -20,7 +20,7 @@ package org.apache.maven.surefire.its.mi
import org.apache.commons.io.FileUtils;
-import org.apache.maven.surefire.its.SurefireVerifierTestClass;
+import org.apache.maven.surefire.its.fixture.SurefireVerifierTestClass;
import java.io.File;