You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ti...@apache.org on 2020/04/16 23:02:08 UTC
[maven-surefire] 01/01: automated tests
This is an automated email from the ASF dual-hosted git repository.
tibordigana pushed a commit to branch pull/248
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git
commit 29dec2bde42b3f57b83c2c2a5af8262dba9bf33d
Author: tibordigana <ti...@apache.org>
AuthorDate: Fri Apr 17 01:01:58 2020 +0200
automated tests
---
surefire-providers/common-junit48/pom.xml | 220 ++++++++++++++-------
.../GroupMatcherCategoryFilterPreJUnit412Test.java | 45 +++--
.../junit48/GroupMatcherCategoryFilterTest.java | 61 ++++--
3 files changed, 227 insertions(+), 99 deletions(-)
diff --git a/surefire-providers/common-junit48/pom.xml b/surefire-providers/common-junit48/pom.xml
index fa80e47..a011654 100644
--- a/surefire-providers/common-junit48/pom.xml
+++ b/surefire-providers/common-junit48/pom.xml
@@ -17,77 +17,161 @@
~ under the License.
-->
-<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>
+<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>
- <parent>
- <groupId>org.apache.maven.surefire</groupId>
- <artifactId>surefire-providers</artifactId>
- <version>3.0.0-SNAPSHOT</version>
- </parent>
+ <parent>
+ <groupId>org.apache.maven.surefire</groupId>
+ <artifactId>surefire-providers</artifactId>
+ <version>3.0.0-SNAPSHOT</version>
+ </parent>
- <artifactId>common-junit48</artifactId>
+ <artifactId>common-junit48</artifactId>
- <name>Shared JUnit48 Provider Code</name>
- <description>Shared JUnit48 Provider Code</description>
+ <name>Shared JUnit48 Provider Code</name>
+ <description>Shared JUnit48 Provider Code</description>
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.8.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.maven.surefire</groupId>
- <artifactId>common-junit4</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.maven.surefire</groupId>
- <artifactId>surefire-grouper</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.maven.shared</groupId>
- <artifactId>maven-shared-utils</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.jacoco</groupId>
- <artifactId>jacoco-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>jacoco-agent</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <propertyName>jacoco.agent</propertyName>
- </configuration>
- </plugin>
- <plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
- <includes>
- <include>**/JUnit4SuiteTest.java</include>
- </includes>
- </configuration>
- <dependencies>
- <dependency>
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.8.1</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.surefire</groupId>
+ <artifactId>common-junit4</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.apache.maven.surefire</groupId>
- <artifactId>surefire-shadefire</artifactId>
- <version>3.0.0-M4</version> <!-- ${shadedVersion}, but resolved due to https://issues.apache.org/jira/browse/MRELEASE-799 -->
- </dependency>
- </dependencies>
- </plugin>
- </plugins>
- </build>
+ <artifactId>surefire-grouper</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.shared</groupId>
+ <artifactId>maven-shared-utils</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jacoco</groupId>
+ <artifactId>jacoco-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>jacoco-agent</id>
+ <goals>
+ <goal>prepare-agent</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <propertyName>jacoco.agent</propertyName>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>junit-4.11</id>
+ <phase>process-test-sources</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${project.build.directory}/endorsed-test</outputDirectory>
+ <overWriteIfNewer>false</overWriteIfNewer>
+ <artifactItems>
+ <artifactItem>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.11</version>
+ <type>jar</type>
+ </artifactItem>
+ </artifactItems>
+ </configuration>
+ </execution>
+ <execution>
+ <id>test</id>
+ <phase>process-test-sources</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${project.build.directory}/endorsed-test</outputDirectory>
+ <overWriteIfNewer>false</overWriteIfNewer>
+ <artifactItems>
+ <artifactItem>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.12</version>
+ <type>jar</type>
+ </artifactItem>
+ </artifactItems>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>default-test</id>
+ <phase>test</phase>
+ <goals>
+ <goal>test</goal>
+ </goals>
+ <configuration>
+ <includes>
+ <include>**/JUnit4SuiteTest.java</include>
+ </includes>
+ </configuration>
+ </execution>
+ <execution>
+ <id>junit-4.11</id>
+ <phase>test</phase>
+ <goals>
+ <goal>test</goal>
+ </goals>
+ <configuration>
+ <test>GroupMatcherCategoryFilterPreJUnit412Test$JUnit4SuiteTest</test>
+ <classpathDependencyExcludes>junit:junit</classpathDependencyExcludes>
+ <additionalClasspathElements>
+ <additionalClasspathElement>${project.build.directory}/endorsed-test/junit-4.11.jar</additionalClasspathElement>
+ </additionalClasspathElements>
+ </configuration>
+ </execution>
+ <execution>
+ <id>junit-4.12</id>
+ <phase>test</phase>
+ <goals>
+ <goal>test</goal>
+ </goals>
+ <configuration>
+ <test>GroupMatcherCategoryFilterTest$JUnit4SuiteTest</test>
+ <classpathDependencyExcludes>junit:junit</classpathDependencyExcludes>
+ <additionalClasspathElements>
+ <additionalClasspathElement>${project.build.directory}/endorsed-test/junit-4.12.jar</additionalClasspathElement>
+ </additionalClasspathElements>
+ </configuration>
+ </execution>
+ </executions>
+ <configuration>
+ <argLine>${jvm.args.tests} ${jacoco.agent}</argLine>
+ </configuration>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.maven.surefire</groupId>
+ <artifactId>surefire-shadefire</artifactId>
+ <version>3.0.0-M4
+ </version> <!-- ${shadedVersion}, but resolved due to https://issues.apache.org/jira/browse/MRELEASE-799 -->
+ </dependency>
+ </dependencies>
+ </plugin>
+ </plugins>
+ </build>
</project>
diff --git a/surefire-providers/common-junit48/src/test/java/org/apache/maven/surefire/common/junit48/GroupMatcherCategoryFilterPreJUnit412Test.java b/surefire-providers/common-junit48/src/test/java/org/apache/maven/surefire/common/junit48/GroupMatcherCategoryFilterPreJUnit412Test.java
index 4df8abb..48458e0 100644
--- a/surefire-providers/common-junit48/src/test/java/org/apache/maven/surefire/common/junit48/GroupMatcherCategoryFilterPreJUnit412Test.java
+++ b/surefire-providers/common-junit48/src/test/java/org/apache/maven/surefire/common/junit48/GroupMatcherCategoryFilterPreJUnit412Test.java
@@ -19,24 +19,36 @@ package org.apache.maven.surefire.common.junit48;
* under the License.
*/
+import junit.framework.JUnit4TestAdapter;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+import junit.runner.Version;
import org.apache.maven.surefire.common.junit48.tests.group.ABCParameterizedTest;
import org.apache.maven.surefire.common.junit48.tests.group.ABCTest;
import org.apache.maven.surefire.common.junit48.tests.group.ATest;
import org.apache.maven.surefire.common.junit48.tests.group.BCTest;
import org.apache.maven.surefire.group.match.GroupMatcher;
import org.apache.maven.surefire.group.match.SingleGroupMatcher;
-import org.junit.Assert;
+import org.junit.BeforeClass;
import org.junit.Test;
-import org.junit.runner.Description;
+
+import static org.junit.Assert.assertFalse;
+import static org.junit.runner.Description.createSuiteDescription;
+import static org.junit.runner.Description.createTestDescription;
/**
* Before JUnit 4.12, @Category annotation was not @Inherited. These tests make sure the implied contract is honored.
*/
public class GroupMatcherCategoryFilterPreJUnit412Test
{
-
private GroupMatcherCategoryFilter cut;
+ @BeforeClass
+ public static void printVersion()
+ {
+ System.out.println( Version.id() );
+ }
+
@Test
public void shouldNotMatchIncludedCategoryInParent()
{
@@ -44,8 +56,8 @@ public class GroupMatcherCategoryFilterPreJUnit412Test
new SingleGroupMatcher( "org.apache.maven.surefire.common.junit48.tests.group.marker.CategoryB" );
GroupMatcher excluded = null;
cut = new GroupMatcherCategoryFilter( included, excluded );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( BCTest.class ) ) );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( ATest.class ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( BCTest.class ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( ATest.class ) ) );
}
@Test
@@ -55,9 +67,9 @@ public class GroupMatcherCategoryFilterPreJUnit412Test
new SingleGroupMatcher( "org.apache.maven.surefire.common.junit48.tests.group.marker.CategoryC" );
GroupMatcher excluded = null;
cut = new GroupMatcherCategoryFilter( included, excluded );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( ABCTest.class ) ) );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( BCTest.class ) ) );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( ATest.class ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( ABCTest.class ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( BCTest.class ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( ATest.class ) ) );
}
@Test
@@ -67,10 +79,19 @@ public class GroupMatcherCategoryFilterPreJUnit412Test
new SingleGroupMatcher( "org.apache.maven.surefire.common.junit48.tests.group.marker.CategoryB" );
GroupMatcher excluded = null;
cut = new GroupMatcherCategoryFilter( included, excluded );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( ABCTest.class ) ) );
- Assert.assertFalse( cut.shouldRun( Description.createTestDescription( ABCTest.class, "abc" ) ) );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( ABCParameterizedTest.class ) ) );
- Assert.assertFalse( cut.shouldRun( Description.createTestDescription( ABCParameterizedTest.class, "abc" ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( ABCTest.class ) ) );
+ assertFalse( cut.shouldRun( createTestDescription( ABCTest.class, "abc" ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( ABCParameterizedTest.class ) ) );
+ assertFalse( cut.shouldRun( createTestDescription( ABCParameterizedTest.class, "abc" ) ) );
}
+ public static class JUnit4SuiteTest extends TestCase
+ {
+ public static junit.framework.Test suite()
+ {
+ TestSuite suite = new TestSuite();
+ suite.addTest( new JUnit4TestAdapter( GroupMatcherCategoryFilterPreJUnit412Test.class ) );
+ return suite;
+ }
+ }
}
diff --git a/surefire-providers/common-junit48/src/test/java/org/apache/maven/surefire/common/junit48/GroupMatcherCategoryFilterTest.java b/surefire-providers/common-junit48/src/test/java/org/apache/maven/surefire/common/junit48/GroupMatcherCategoryFilterTest.java
index 6e4f8ef..98f6dc7 100644
--- a/surefire-providers/common-junit48/src/test/java/org/apache/maven/surefire/common/junit48/GroupMatcherCategoryFilterTest.java
+++ b/surefire-providers/common-junit48/src/test/java/org/apache/maven/surefire/common/junit48/GroupMatcherCategoryFilterTest.java
@@ -19,6 +19,10 @@ package org.apache.maven.surefire.common.junit48;
* under the License.
*/
+import junit.framework.JUnit4TestAdapter;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+import junit.runner.Version;
import org.apache.maven.surefire.common.junit48.tests.group.ABCParameterizedTest;
import org.apache.maven.surefire.common.junit48.tests.group.ABCTest;
import org.apache.maven.surefire.common.junit48.tests.group.ATest;
@@ -27,18 +31,27 @@ import org.apache.maven.surefire.common.junit48.tests.group.BCTest;
import org.apache.maven.surefire.common.junit48.tests.group.BTest;
import org.apache.maven.surefire.group.match.GroupMatcher;
import org.apache.maven.surefire.group.match.SingleGroupMatcher;
-import org.junit.Assert;
+import org.junit.BeforeClass;
import org.junit.Test;
-import org.junit.runner.Description;
+
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.junit.runner.Description.createSuiteDescription;
+import static org.junit.runner.Description.createTestDescription;
/**
* Tests covering inheritance in @Categories for Test classes.
*/
public class GroupMatcherCategoryFilterTest
{
-
private GroupMatcherCategoryFilter cut;
+ @BeforeClass
+ public static void printVersion()
+ {
+ System.out.println( Version.id() );
+ }
+
@Test
public void shouldMatchIncludedCategoryInSelf()
{
@@ -46,7 +59,7 @@ public class GroupMatcherCategoryFilterTest
new SingleGroupMatcher( "org.apache.maven.surefire.common.junit48.tests.group.marker.CategoryB" );
GroupMatcher excluded = null;
cut = new GroupMatcherCategoryFilter( included, excluded );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( BTest.class ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( BTest.class ) ) );
}
@Test
@@ -56,8 +69,8 @@ public class GroupMatcherCategoryFilterTest
new SingleGroupMatcher( "org.apache.maven.surefire.common.junit48.tests.group.marker.CategoryB" );
GroupMatcher excluded = null;
cut = new GroupMatcherCategoryFilter( included, excluded );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( BCTest.class ) ) );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( ATest.class ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( BCTest.class ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( ATest.class ) ) );
}
@Test
@@ -67,9 +80,9 @@ public class GroupMatcherCategoryFilterTest
new SingleGroupMatcher( "org.apache.maven.surefire.common.junit48.tests.group.marker.CategoryC" );
GroupMatcher excluded = null;
cut = new GroupMatcherCategoryFilter( included, excluded );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( ABCTest.class ) ) );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( BCTest.class ) ) );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( ATest.class ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( ABCTest.class ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( BCTest.class ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( ATest.class ) ) );
}
@Test
@@ -79,10 +92,10 @@ public class GroupMatcherCategoryFilterTest
new SingleGroupMatcher( "org.apache.maven.surefire.common.junit48.tests.group.marker.CategoryB" );
GroupMatcher excluded = null;
cut = new GroupMatcherCategoryFilter( included, excluded );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( ABCTest.class ) ) );
- Assert.assertTrue( cut.shouldRun( Description.createTestDescription( ABCTest.class, "abc" ) ) );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( ABCParameterizedTest.class ) ) );
- Assert.assertTrue( cut.shouldRun( Description.createTestDescription( ABCParameterizedTest.class, "abc" ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( ABCTest.class ) ) );
+ assertTrue( cut.shouldRun( createTestDescription( ABCTest.class, "abc" ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( ABCParameterizedTest.class ) ) );
+ assertTrue( cut.shouldRun( createTestDescription( ABCParameterizedTest.class, "abc" ) ) );
}
@Test
@@ -93,9 +106,9 @@ public class GroupMatcherCategoryFilterTest
GroupMatcher excluded =
new SingleGroupMatcher( "org.apache.maven.surefire.common.junit48.tests.group.marker.CategoryA" );
cut = new GroupMatcherCategoryFilter( included, excluded );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( ABCTest.class ) ) );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( BBCTest.class ) ) );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( BTest.class ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( ABCTest.class ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( BBCTest.class ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( BTest.class ) ) );
}
@Test
@@ -105,8 +118,18 @@ public class GroupMatcherCategoryFilterTest
GroupMatcher excluded =
new SingleGroupMatcher( "org.apache.maven.surefire.common.junit48.tests.group.marker.CategoryA" );
cut = new GroupMatcherCategoryFilter( included, excluded );
- Assert.assertFalse( cut.shouldRun( Description.createSuiteDescription( ATest.class ) ) );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( BTest.class ) ) );
- Assert.assertTrue( cut.shouldRun( Description.createSuiteDescription( BBCTest.class ) ) );
+ assertFalse( cut.shouldRun( createSuiteDescription( ATest.class ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( BTest.class ) ) );
+ assertTrue( cut.shouldRun( createSuiteDescription( BBCTest.class ) ) );
+ }
+
+ public static class JUnit4SuiteTest extends TestCase
+ {
+ public static junit.framework.Test suite()
+ {
+ TestSuite suite = new TestSuite();
+ suite.addTest( new JUnit4TestAdapter( GroupMatcherCategoryFilterTest.class ) );
+ return suite;
+ }
}
}