You are viewing a plain text version of this content. The canonical link for it is here.
Posted to surefire-commits@maven.apache.org by kr...@apache.org on 2011/04/20 10:21:18 UTC

svn commit: r1095316 - in /maven/surefire/trunk/surefire-integration-tests/src/test: java/org/apache/maven/surefire/its/ resources/includes-excludes/ resources/includes-excludes/src/test/java/ resources/includes-excludes/src/test/java/org/ resources/in...

Author: krosenvold
Date: Wed Apr 20 08:21:17 2011
New Revision: 1095316

URL: http://svn.apache.org/viewvc?rev=1095316&view=rev
Log:
o Improved interation test coverage for SUREFIRE-729.

Added:
    maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/
    maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/
    maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DefaultTest.java   (contents, props changed)
      - copied, changed from r1095315, maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DefaultTest.java
    maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DontRunTest.java   (contents, props changed)
      - copied, changed from r1095315, maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DontRunTest.java
    maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/NotIncludedByDefault.java   (contents, props changed)
      - copied, changed from r1095315, maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/NotIncludedByDefault.java
Removed:
    maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DefaultTest.java
    maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DontRunTest.java
    maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/NotIncludedByDefault.java
Modified:
    maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/IncludesExcludesIT.java
    maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/SurefireVerifierTestClass.java
    maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/pom.xml

Modified: maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/IncludesExcludesIT.java
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/IncludesExcludesIT.java?rev=1095316&r1=1095315&r2=1095316&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/IncludesExcludesIT.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/java/org/apache/maven/surefire/its/IncludesExcludesIT.java Wed Apr 20 08:21:17 2011
@@ -18,11 +18,7 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
-import org.apache.maven.it.Verifier;
-import org.apache.maven.it.util.ResourceExtractor;
-import org.apache.maven.surefire.its.misc.HelperAssertions;
-
-import java.io.File;
+import org.apache.maven.it.VerificationException;
 
 /**
  * Test include/exclude patterns.
@@ -31,25 +27,45 @@ import java.io.File;
  * @version $Id$
  */
 public class IncludesExcludesIT
-    extends AbstractSurefireIntegrationTestClass
+    extends SurefireVerifierTestClass
 {
 
+
+    public IncludesExcludesIT()
+    {
+        super( "/includes-excludes" );
+    }
+
     /**
      * Test surefire inclusions/exclusions
      */
     public void testIncludesExcludes()
         throws Exception
     {
-        File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/includes-excludes" );
+        testWithProfile( "-Psimple" );
+    }
+
+    public void testRegexIncludesExcludes()
+        throws Exception
+    {
+        testWithProfile( "-Pregex" );
+    }
 
-        Verifier verifier = new Verifier( testDir.getAbsolutePath() );
-        executeGoal( verifier, "test" );
-        verifier.assertFilePresent( "target/testTouchFile.txt" );
-        verifier.assertFilePresent( "target/defaultTestTouchFile.txt" );
-        verifier.verifyErrorFreeLog();
-        verifier.resetStreams();
+    public void testPathBasedIncludesExcludes()
+        throws Exception
+    {
+        testWithProfile( "-Ppath" );
+    }
 
-        HelperAssertions.assertTestSuiteResults( 2, 0, 0, 0, testDir );
+    private void testWithProfile( String profile )
+        throws VerificationException
+    {
+        addGoal( profile );
+        execute( "test" );
+        assertPresent( getTargetFile( "testTouchFile.txt" ) );
+        assertPresent( getTargetFile( "defaultTestTouchFile.txt" ) );
+        verifyErrorFreeLog();
+        assertTestSuiteResults( 2, 0, 0, 0 );
     }
 
 }

Modified: 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/SurefireVerifierTestClass.java?rev=1095316&r1=1095315&r2=1095316&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/SurefireVerifierTestClass.java Wed Apr 20 08:21:17 2011
@@ -19,8 +19,10 @@ package org.apache.maven.surefire.its;
  * under the License.
  */
 
-import junit.framework.Assert;
-import junit.framework.TestCase;
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
 import org.apache.maven.artifact.versioning.ArtifactVersion;
 import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
 import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
@@ -31,10 +33,8 @@ import org.apache.maven.it.util.FileUtil
 import org.apache.maven.it.util.ResourceExtractor;
 import org.apache.maven.surefire.its.misc.HelperAssertions;
 
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
+import junit.framework.Assert;
+import junit.framework.TestCase;
 
 /**
  * Contains commonly used featurtes for most tests, encapsulating
@@ -227,6 +227,12 @@ public abstract class SurefireVerifierTe
         return new File( targetDir, fileName );
     }
 
+    protected File getTargetFile( String fileName )
+    {
+        File targetDir = getSubFile( "target" );
+        return new File( targetDir, fileName );
+    }
+
     protected File getSiteFile( String moduleName, String fileName )
     {
         File targetDir = getSubFile(moduleName + "/target/site" );

Modified: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/pom.xml
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/pom.xml?rev=1095316&r1=1095315&r2=1095316&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/pom.xml (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/pom.xml Wed Apr 20 08:21:17 2011
@@ -23,10 +23,10 @@ under the License.
   <modelVersion>4.0.0</modelVersion>
 
   <groupId>org.apache.maven.plugins.surefire</groupId>
-  <artifactId>maven-it-it0050</artifactId>
+  <artifactId>maven-it-includes-excludes</artifactId>
   <version>1.0-SNAPSHOT</version>
 
-  <name>Maven Integration Test :: it0050</name> 
+  <name>Maven Integration Test :: includes-excludes</name>
   <description>Test surefire inclusion/exclusions</description>
 
   <dependencies>
@@ -39,20 +39,71 @@ under the License.
   </dependencies>
 
   <build>
-    <plugins>
-      <plugin>
-        <artifactId>maven-surefire-plugin</artifactId>
-        <version>${surefire.version}</version>
-        <configuration>
-          <excludes>
-            <exclude>DontRunTest.*</exclude>
-          </excludes>
-          <includes>
-            <include>NotIncludedByDefault.java</include>
-            <include>*Test.java</include>
-          </includes>
-        </configuration>
-      </plugin>
-    </plugins>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-surefire-plugin</artifactId>
+          <version>${surefire.version}</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
   </build>
+  <profiles>
+    <profile>
+      <id>simple</id>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-surefire-plugin</artifactId>
+            <configuration>
+              <excludes>
+                <exclude>**/DontRunTest.*</exclude>
+              </excludes>
+              <includes>
+                <include>**/NotIncludedByDefault.java</include>
+                <include>**/*Test.java</include>
+              </includes>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>regex</id>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-surefire-plugin</artifactId>
+            <configuration>
+              <excludes>
+                <exclude>**/DontRunTest.*</exclude>
+              </excludes>
+              <includes>
+                <include>%regex[.*Test.*|.*Not.*]</include>
+              </includes>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>path</id>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-surefire-plugin</artifactId>
+            <configuration>
+              <excludes>
+                <exclude>**/DontRunTest.java</exclude>
+              </excludes>
+              <includes>
+                <include>*/test/*</include>
+              </includes>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+
+  </profiles>
 </project>

Copied: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DefaultTest.java (from r1095315, maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DefaultTest.java)
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DefaultTest.java?p2=maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DefaultTest.java&p1=maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DefaultTest.java&r1=1095315&r2=1095316&rev=1095316&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DefaultTest.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DefaultTest.java Wed Apr 20 08:21:17 2011
@@ -1,3 +1,5 @@
+package org.test;
+
 import java.io.FileOutputStream;
 
 public class DefaultTest

Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DefaultTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DefaultTest.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Copied: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DontRunTest.java (from r1095315, maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DontRunTest.java)
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DontRunTest.java?p2=maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DontRunTest.java&p1=maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DontRunTest.java&r1=1095315&r2=1095316&rev=1095316&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/DontRunTest.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DontRunTest.java Wed Apr 20 08:21:17 2011
@@ -1,3 +1,5 @@
+package org.test;
+
 import junit.framework.TestCase;
 
 public class DontRunTest extends TestCase

Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DontRunTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/DontRunTest.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Copied: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/NotIncludedByDefault.java (from r1095315, maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/NotIncludedByDefault.java)
URL: http://svn.apache.org/viewvc/maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/NotIncludedByDefault.java?p2=maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/NotIncludedByDefault.java&p1=maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/NotIncludedByDefault.java&r1=1095315&r2=1095316&rev=1095316&view=diff
==============================================================================
--- maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/NotIncludedByDefault.java (original)
+++ maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/NotIncludedByDefault.java Wed Apr 20 08:21:17 2011
@@ -1,3 +1,5 @@
+package org.test;
+
 import java.io.FileOutputStream;
 
 public class NotIncludedByDefault

Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/NotIncludedByDefault.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/surefire/trunk/surefire-integration-tests/src/test/resources/includes-excludes/src/test/java/org/test/NotIncludedByDefault.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision