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 2019/04/13 04:58:57 UTC
[maven-surefire] branch 1546-1222 updated: used default DisplayName
(useFileName, useTestCaseClassName,
useTestCaseMethodName) in StatelessXmlReporter
This is an automated email from the ASF dual-hosted git repository.
tibordigana pushed a commit to branch 1546-1222
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git
The following commit(s) were added to refs/heads/1546-1222 by this push:
new 05e5a51 used default DisplayName (useFileName, useTestCaseClassName, useTestCaseMethodName) in StatelessXmlReporter
05e5a51 is described below
commit 05e5a5146e67b79280104a1915cdfef4b12fe871
Author: tibordigana <ti...@apache.org>
AuthorDate: Sat Apr 13 06:58:45 2019 +0200
used default DisplayName (useFileName, useTestCaseClassName, useTestCaseMethodName) in StatelessXmlReporter
---
.../plugin/surefire/AbstractSurefireMojo.java | 16 ++++--
.../surefire/StartupReportConfiguration.java | 4 +-
.../surefire/SurefireDependencyResolver.java | 9 +---
.../extensions/DefaultStatelessReporter.java | 60 ++++++++++++++++++++--
.../surefire/report/NullStatelessXmlReporter.java | 2 +-
.../surefire/report/StatelessXmlReporter.java | 30 ++++++++---
.../plugin/surefire/report/WrappedReportEntry.java | 5 ++
.../AbstractSurefireMojoJava7PlusTest.java | 10 ++--
.../plugin/surefire/AbstractSurefireMojoTest.java | 9 +++-
.../surefire/SurefireDependencyResolverTest.java | 2 +-
.../surefire/report/StatelessXmlReporterTest.java | 7 +--
.../surefire/report/WrappedReportEntryTest.java | 4 ++
.../maven/surefire/extensions/SourceNameType.java | 2 +-
.../surefire/extensions/StatelessReporter.java | 8 +--
14 files changed, 131 insertions(+), 37 deletions(-)
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java
index 6fc4c87..d5a36e5 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/AbstractSurefireMojo.java
@@ -674,9 +674,10 @@ public abstract class AbstractSurefireMojo
/**
* Flag to disable the generation of report files in xml format.
- *
+ * Deprecated since 3.0.0-M4. Use this parameter within {@code statelessReporter}.
* @since 2.2
*/
+ @Deprecated
@Parameter( property = "disableXmlReport", defaultValue = "false" )
private boolean disableXmlReport;
@@ -1785,7 +1786,8 @@ public abstract class AbstractSurefireMojo
getConsoleLogger().debug( testClasspath.getCompactLogMessage( "test(compact) classpath:" ) );
getConsoleLogger().debug( providerClasspath.getCompactLogMessage( "provider(compact) classpath:" ) );
- Artifact[] additionalInProcArtifacts = { getCommonArtifact(), getApiArtifact(), getLoggerApiArtifact() };
+ Artifact[] additionalInProcArtifacts =
+ { getCommonArtifact(), getExtensionsArtifact(), getApiArtifact(), getLoggerApiArtifact() };
Set<Artifact> inProcArtifacts = retainInProcArtifactsUnique( providerArtifacts, additionalInProcArtifacts );
Classpath inProcClasspath = createInProcClasspath( providerClasspath, inProcArtifacts );
getConsoleLogger().debug( inProcClasspath.getLogMessage( "in-process classpath:" ) );
@@ -1885,7 +1887,8 @@ public abstract class AbstractSurefireMojo
ModularClasspath modularClasspath = new ModularClasspath( moduleDescriptor, testModulepath.getClassPath(),
packages, getTestClassesDirectory() );
- Artifact[] additionalInProcArtifacts = { getCommonArtifact(), getApiArtifact(), getLoggerApiArtifact() };
+ Artifact[] additionalInProcArtifacts =
+ { getCommonArtifact(), getExtensionsArtifact(), getApiArtifact(), getLoggerApiArtifact() };
Set<Artifact> inProcArtifacts = retainInProcArtifactsUnique( providerArtifacts, additionalInProcArtifacts );
Classpath inProcClasspath = createInProcClasspath( providerClasspath, inProcArtifacts );
@@ -1910,6 +1913,11 @@ public abstract class AbstractSurefireMojo
return getPluginArtifactMap().get( "org.apache.maven.surefire:maven-surefire-common" );
}
+ private Artifact getExtensionsArtifact()
+ {
+ return getPluginArtifactMap().get( "org.apache.maven.surefire:surefire-extensions-api" );
+ }
+
private Artifact getApiArtifact()
{
return getPluginArtifactMap().get( "org.apache.maven.surefire:surefire-api" );
@@ -3163,7 +3171,7 @@ public abstract class AbstractSurefireMojo
public Set<Artifact> getProviderClasspath()
{
return surefireDependencyResolver.addProviderToClasspath( getPluginArtifactMap(), getMojoArtifact(),
- getCommonArtifact(), getApiArtifact(), getLoggerApiArtifact() );
+ getApiArtifact(), getLoggerApiArtifact() );
}
}
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/StartupReportConfiguration.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/StartupReportConfiguration.java
index 932eecd..962b7c3 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/StartupReportConfiguration.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/StartupReportConfiguration.java
@@ -39,6 +39,7 @@ import static org.apache.maven.plugin.surefire.SurefireHelper.replaceForkThreads
import static org.apache.maven.plugin.surefire.report.ConsoleReporter.BRIEF;
import static org.apache.maven.plugin.surefire.report.ConsoleReporter.PLAIN;
import static org.apache.commons.lang3.StringUtils.trimToNull;
+import static org.apache.maven.surefire.extensions.SourceNameType.DEFAULT;
/**
* All the parameters used to construct reporters
@@ -151,7 +152,6 @@ public final class StartupReportConfiguration
return rerunFailingTestsCount;
}
- @Deprecated // rename to stateful
public StatelessXmlReporter instantiateStatelessXmlReporter( Integer forkNumber )
{
assert forkNumber == null || isForkMode;
@@ -168,7 +168,7 @@ public final class StartupReportConfiguration
return isDisableXmlReport()
? null
: new StatelessXmlReporter( resolveReportsDirectory( forkNumber ), reportNameSuffix, trimStackTrace,
- rerunFailingTestsCount, testClassMethodRunHistory, xsdSchemaLocation );
+ rerunFailingTestsCount, testClassMethodRunHistory, xsdSchemaLocation, DEFAULT, DEFAULT, DEFAULT );
}
public FileReporter instantiateFileReporter( Integer forkNumber )
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/SurefireDependencyResolver.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/SurefireDependencyResolver.java
index 170107c..16cb6c8 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/SurefireDependencyResolver.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/SurefireDependencyResolver.java
@@ -205,7 +205,7 @@ final class SurefireDependencyResolver
}
Set<Artifact> addProviderToClasspath( Map<String, Artifact> pluginArtifactMap, Artifact mojoPluginArtifact,
- Artifact surefireCommon, Artifact surefireApi, Artifact surefireLoggerApi )
+ Artifact surefireApi, Artifact surefireLoggerApi )
{
Set<Artifact> providerArtifacts = new LinkedHashSet<>();
ArtifactResolutionResult artifactResolutionResult = resolvePluginArtifact( mojoPluginArtifact );
@@ -218,12 +218,7 @@ final class SurefireDependencyResolver
{
String groupId = dependency.getGroupId();
String artifactId = dependency.getArtifactId();
- if ( groupId.equals( surefireCommon.getGroupId() )
- && artifactId.equals( surefireCommon.getArtifactId() ) )
- {
- providerArtifacts.add( surefireCommon );
- }
- else if ( groupId.equals( surefireApi.getGroupId() )
+ if ( groupId.equals( surefireApi.getGroupId() )
&& artifactId.equals( surefireApi.getArtifactId() ) )
{
providerArtifacts.add( surefireApi );
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/extensions/DefaultStatelessReporter.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/extensions/DefaultStatelessReporter.java
index a2e59a4..0a96052 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/extensions/DefaultStatelessReporter.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/extensions/DefaultStatelessReporter.java
@@ -20,9 +20,13 @@ package org.apache.maven.plugin.surefire.extensions;
*/
import org.apache.maven.plugin.surefire.report.StatelessXmlReporter;
+import org.apache.maven.surefire.extensions.SourceNameType;
import org.apache.maven.surefire.extensions.StatelessReportEventListener;
import org.apache.maven.surefire.extensions.StatelessReporter;
+import static org.apache.maven.surefire.extensions.SourceNameType.DEFAULT;
+import static org.apache.maven.surefire.extensions.SourceNameType.PHRASED;
+
/**
* Default implementation for extension of {@link StatelessXmlReporter} in plugin.
*
@@ -37,8 +41,58 @@ public class DefaultStatelessReporter
public StatelessReportEventListener<StatelessReporterEvent> createStatelessReportEventListener(
DefaultStatelessReportMojoConfiguration configuration )
{
- return new StatelessXmlReporter( configuration.getReportsDirectory(), configuration.getReportNameSuffix(),
- configuration.isTrimStackTrace(), configuration.getRerunFailingTestsCount(),
- configuration.getTestClassMethodRunHistory(), configuration.getXsdSchemaLocation() );
+ return new StatelessXmlReporter( configuration.getReportsDirectory(),
+ configuration.getReportNameSuffix(),
+ configuration.isTrimStackTrace(),
+ configuration.getRerunFailingTestsCount(),
+ configuration.getTestClassMethodRunHistory(),
+ configuration.getXsdSchemaLocation(),
+ getUseFileName(),
+ getUseTestCaseClassName(),
+ getUseTestCaseMethodName() );
+ }
+
+ @Override
+ public Object clone( ClassLoader target )
+ {
+ try
+ {
+ Class<?> cls = target.loadClass( getClass().getName() );
+ Object clone = cls.newInstance();
+
+ cls.getMethod( "setDisableXmlReport", boolean.class )
+ .invoke( clone, isDisableXmlReport() );
+
+ Class<?> enumCls = target.loadClass( SourceNameType.class.getName() );
+ Object[] enums = enumCls.getEnumConstants();
+ assert enums.length == 2 : "'SourceNameType' should have two enum constants {DEFAULT, PHRASED}.";
+ Enum<?> defaultSourceName = findEnumByName( enums, DEFAULT.name() );
+ Enum<?> phrasedSourceName = findEnumByName( enums, PHRASED.name() );
+ cls.getMethod( "setUseFileName", enumCls )
+ .invoke( clone, getUseFileName() == DEFAULT ? defaultSourceName : phrasedSourceName );
+ cls.getMethod( "setUseTestCaseClassName", enumCls )
+ .invoke( clone, getUseTestCaseClassName() == DEFAULT ? defaultSourceName : phrasedSourceName );
+ cls.getMethod( "setUseTestCaseMethodName", enumCls )
+ .invoke( clone, getUseTestCaseMethodName() == DEFAULT ? defaultSourceName : phrasedSourceName );
+
+ return clone;
+ }
+ catch ( ReflectiveOperationException e )
+ {
+ throw new IllegalStateException( e.getLocalizedMessage() );
+ }
+ }
+
+ private static Enum<?> findEnumByName( Object[] enums, String name )
+ {
+ for ( Object e : enums )
+ {
+ Enum<?> foundEnum = (Enum<?>) e;
+ if ( name.equals( foundEnum.name() ) )
+ {
+ return foundEnum;
+ }
+ }
+ throw new IllegalStateException( "Could not find enum " + name );
}
}
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/NullStatelessXmlReporter.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/NullStatelessXmlReporter.java
index 7f5d202..a6b3b23 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/NullStatelessXmlReporter.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/NullStatelessXmlReporter.java
@@ -33,7 +33,7 @@ class NullStatelessXmlReporter
private NullStatelessXmlReporter()
{
- super( null, null, false, 0, null, null );
+ super( null, null, false, 0, null, null, null, null, null );
}
@Override
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporter.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporter.java
index c5f7842..dec75f8 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporter.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporter.java
@@ -23,8 +23,8 @@ import org.apache.maven.plugin.surefire.booterclient.output.InPluginProcessDumpS
import org.apache.maven.plugin.surefire.extensions.StatelessReporterEvent;
import org.apache.maven.shared.utils.xml.PrettyPrintXMLWriter;
import org.apache.maven.shared.utils.xml.XMLWriter;
+import org.apache.maven.surefire.extensions.SourceNameType;
import org.apache.maven.surefire.extensions.StatelessReportEventListener;
-import org.apache.maven.surefire.report.ReportEntry;
import org.apache.maven.surefire.report.ReporterException;
import org.apache.maven.surefire.report.SafeThrowable;
@@ -48,6 +48,7 @@ import static java.nio.charset.StandardCharsets.UTF_8;
import static org.apache.maven.plugin.surefire.report.DefaultReporterFactory.TestResultType;
import static org.apache.maven.plugin.surefire.report.FileReporterUtils.stripIllegalFilenameChars;
import static org.apache.maven.plugin.surefire.report.ReportEntryType.SUCCESS;
+import static org.apache.maven.surefire.extensions.SourceNameType.DEFAULT;
import static org.apache.maven.surefire.util.internal.StringUtils.isBlank;
@SuppressWarnings( { "javadoc", "checkstyle:javadoctype" } )
@@ -101,10 +102,17 @@ public class StatelessXmlReporter implements StatelessReportEventListener<Statel
// and the list of runs for each test method
private final Map<String, Deque<WrappedReportEntry>> testClassMethodRunHistoryMap;
+ private final SourceNameType fileName;
+
+ private final SourceNameType className;
+
+ private final SourceNameType methodName;
+
public StatelessXmlReporter( File reportsDirectory, String reportNameSuffix, boolean trimStackTrace,
int rerunFailingTestsCount,
Map<String, Deque<WrappedReportEntry>> testClassMethodRunHistoryMap,
- String xsdSchemaLocation )
+ String xsdSchemaLocation,
+ SourceNameType fileName, SourceNameType className, SourceNameType methodName )
{
this.reportsDirectory = reportsDirectory;
this.reportNameSuffix = reportNameSuffix;
@@ -112,6 +120,9 @@ public class StatelessXmlReporter implements StatelessReportEventListener<Statel
this.rerunFailingTestsCount = rerunFailingTestsCount;
this.testClassMethodRunHistoryMap = testClassMethodRunHistoryMap;
this.xsdSchemaLocation = xsdSchemaLocation;
+ this.fileName = fileName;
+ this.className = className;
+ this.methodName = methodName;
}
@Override
@@ -352,9 +363,9 @@ public class StatelessXmlReporter implements StatelessReportEventListener<Statel
return new OutputStreamWriter( fos, UTF_8 );
}
- private File getReportFile( ReportEntry report )
+ private File getReportFile( WrappedReportEntry report )
{
- String reportName = "TEST-" + report.getSourceName();
+ String reportName = "TEST-" + ( fileName == DEFAULT ? report.getSourceName() : report.getReportSourceName() );
String customizedReportName = isBlank( reportNameSuffix ) ? reportName : reportName + "-" + reportNameSuffix;
return new File( reportsDirectory, stripIllegalFilenameChars( customizedReportName + ".xml" ) );
}
@@ -362,14 +373,17 @@ public class StatelessXmlReporter implements StatelessReportEventListener<Statel
private void startTestElement( XMLWriter ppw, WrappedReportEntry report )
{
ppw.startElement( "testcase" );
- ppw.addAttribute( "name", report.getReportName() == null ? "" : extraEscape( report.getReportName(), true ) );
+ String name = methodName == DEFAULT ? report.getName() : report.getReportName();
+ ppw.addAttribute( "name", name == null ? "" : extraEscape( name, true ) );
if ( report.getGroup() != null )
{
ppw.addAttribute( "group", report.getGroup() );
}
- String className = report.getReportSourceName( reportNameSuffix );
+ String className = this.className == DEFAULT
+ ? report.getSourceName( reportNameSuffix )
+ : report.getReportSourceName( reportNameSuffix );
if ( className != null )
{
ppw.addAttribute( "classname", extraEscape( className, true ) );
@@ -386,7 +400,9 @@ public class StatelessXmlReporter implements StatelessReportEventListener<Statel
ppw.addAttribute( "xsi:noNamespaceSchemaLocation", xsdSchemaLocation );
ppw.addAttribute( "version", "3.0" );
- String reportName = report.getReportSourceName( reportNameSuffix );
+ String reportName = this.className == DEFAULT
+ ? report.getSourceName( reportNameSuffix )
+ : report.getReportSourceName( reportNameSuffix );
ppw.addAttribute( "name", reportName == null ? "" : extraEscape( reportName, true ) );
if ( report.getGroup() != null )
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/WrappedReportEntry.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/WrappedReportEntry.java
index c1912a5..fd4bba3 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/WrappedReportEntry.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/WrappedReportEntry.java
@@ -167,6 +167,11 @@ public class WrappedReportEntry
return isBlank( suffix ) ? getReportSourceName() : getReportSourceName() + "(" + suffix + ")";
}
+ String getSourceName( String suffix )
+ {
+ return isBlank( suffix ) ? getSourceName() : getSourceName() + "(" + suffix + ")";
+ }
+
String getReportName()
{
String name = getName();
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/AbstractSurefireMojoJava7PlusTest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/AbstractSurefireMojoJava7PlusTest.java
index 2d268bc..7770ab1 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/AbstractSurefireMojoJava7PlusTest.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/AbstractSurefireMojoJava7PlusTest.java
@@ -60,7 +60,6 @@ import static org.powermock.api.mockito.PowerMockito.doNothing;
import static org.powermock.api.mockito.PowerMockito.mock;
import static org.powermock.api.mockito.PowerMockito.mockStatic;
import static org.powermock.api.mockito.PowerMockito.spy;
-import static org.powermock.api.mockito.PowerMockito.verifyPrivate;
import static org.powermock.api.mockito.PowerMockito.verifyStatic;
import static org.powermock.reflect.Whitebox.invokeMethod;
@@ -155,6 +154,10 @@ public class AbstractSurefireMojoJava7PlusTest
"jar", "", handler );
common.setFile( mockFile( "maven-surefire-common.jar" ) );
+ Artifact ext = new DefaultArtifact( "org.apache.maven.surefire", "surefire-extensions-api", v5, "runtime",
+ "jar", "", handler );
+ ext.setFile( mockFile( "surefire-extensions-api.jar" ) );
+
Artifact api = new DefaultArtifact( "org.apache.maven.surefire", "surefire-api", v5, "runtime",
"jar", "", handler );
api.setFile( mockFile( "surefire-api.jar" ) );
@@ -165,6 +168,7 @@ public class AbstractSurefireMojoJava7PlusTest
Map<String, Artifact> artifacts = new HashMap<>();
artifacts.put( "org.apache.maven.surefire:maven-surefire-common", common );
+ artifacts.put( "org.apache.maven.surefire:surefire-extensions-api", ext );
artifacts.put( "org.apache.maven.surefire:surefire-api", api );
artifacts.put( "org.apache.maven.surefire:surefire-logger-api", loggerApi );
when( mojo.getPluginArtifactMap() ).thenReturn( artifacts );
@@ -200,8 +204,8 @@ public class AbstractSurefireMojoJava7PlusTest
"test(compact) classpath: non-modular.jar junit.jar hamcrest.jar",
"test(compact) modulepath: modular.jar classes",
"provider(compact) classpath: surefire-provider.jar",
- "in-process classpath: surefire-provider.jar maven-surefire-common.jar surefire-api.jar surefire-logger-api.jar",
- "in-process(compact) classpath: surefire-provider.jar maven-surefire-common.jar surefire-api.jar surefire-logger-api.jar"
+ "in-process classpath: surefire-provider.jar maven-surefire-common.jar surefire-extensions-api.jar surefire-api.jar surefire-logger-api.jar",
+ "in-process(compact) classpath: surefire-provider.jar maven-surefire-common.jar surefire-extensions-api.jar surefire-api.jar surefire-logger-api.jar"
);
assertThat( conf ).isNotNull();
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/AbstractSurefireMojoTest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/AbstractSurefireMojoTest.java
index 080f2b5..c71001b 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/AbstractSurefireMojoTest.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/AbstractSurefireMojoTest.java
@@ -236,6 +236,10 @@ public class AbstractSurefireMojoTest
createFromVersion( "1" ), "runtime", "jar", "", handler );
common.setFile( mockFile( "maven-surefire-common.jar" ) );
+ Artifact ext = new DefaultArtifact( "org.apache.maven.surefire", "surefire-extensions-api",
+ createFromVersion( "1" ), "runtime", "jar", "", handler );
+ ext.setFile( mockFile( "surefire-extensions-api.jar" ) );
+
Artifact api = new DefaultArtifact( "org.apache.maven.surefire", "surefire-api",
createFromVersion( "1" ), "runtime", "jar", "", handler );
api.setFile( mockFile( "surefire-api.jar" ) );
@@ -246,6 +250,7 @@ public class AbstractSurefireMojoTest
Map<String, Artifact> providerArtifactsMap = new HashMap<>();
providerArtifactsMap.put( "org.apache.maven.surefire:maven-surefire-common", common );
+ providerArtifactsMap.put( "org.apache.maven.surefire:surefire-extensions-api", ext );
providerArtifactsMap.put( "org.apache.maven.surefire:surefire-api", api );
providerArtifactsMap.put( "org.apache.maven.surefire:surefire-logger-api", loggerApi );
@@ -297,8 +302,8 @@ public class AbstractSurefireMojoTest
"provider classpath: surefire-provider.jar",
"test(compact) classpath: test-classes classes junit.jar hamcrest.jar",
"provider(compact) classpath: surefire-provider.jar",
- "in-process classpath: surefire-provider.jar maven-surefire-common.jar surefire-api.jar surefire-logger-api.jar",
- "in-process(compact) classpath: surefire-provider.jar maven-surefire-common.jar surefire-api.jar surefire-logger-api.jar"
+ "in-process classpath: surefire-provider.jar maven-surefire-common.jar surefire-extensions-api.jar surefire-api.jar surefire-logger-api.jar",
+ "in-process(compact) classpath: surefire-provider.jar maven-surefire-common.jar surefire-extensions-api.jar surefire-api.jar surefire-logger-api.jar"
);
assertThat( conf.getClassLoaderConfiguration() )
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/SurefireDependencyResolverTest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/SurefireDependencyResolverTest.java
index fdb1bbe..7088f77 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/SurefireDependencyResolverTest.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/SurefireDependencyResolverTest.java
@@ -359,7 +359,7 @@ public class SurefireDependencyResolverTest
pluginArtifactsMapping.put( provider.getGroupId() + ":" + provider.getArtifactId(), provider );
pluginArtifactsMapping.put( ext.getGroupId() + ":" + ext.getArtifactId(), ext );
- Set<Artifact> cp = surefireDependencyResolver.addProviderToClasspath( pluginArtifactsMapping, plugin, common, api, logger );
+ Set<Artifact> cp = surefireDependencyResolver.addProviderToClasspath( pluginArtifactsMapping, plugin, api, logger );
assertThat( cp )
.hasSize( 4 )
.containsOnly( provider, api, logger, ext );
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporterTest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporterTest.java
index 29b914a..ab22ef9 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporterTest.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporterTest.java
@@ -38,6 +38,7 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicInteger;
import static java.nio.charset.StandardCharsets.UTF_8;
+import static org.apache.maven.surefire.extensions.SourceNameType.DEFAULT;
import static org.apache.maven.surefire.util.internal.ObjectUtils.systemProps;
@SuppressWarnings( "ResultOfMethodCallIgnored" )
@@ -84,7 +85,7 @@ public class StatelessXmlReporterTest
{
StatelessXmlReporter reporter =
new StatelessXmlReporter( reportDir, null, false, 0,
- new ConcurrentHashMap<String, Deque<WrappedReportEntry>>(), XSD );
+ new ConcurrentHashMap<String, Deque<WrappedReportEntry>>(), XSD, DEFAULT, DEFAULT, DEFAULT );
reporter.cleanTestHistoryMap();
ReportEntry reportEntry = new SimpleReportEntry( getClass().getName(), null, getClass().getName(), null, 12 );
@@ -134,7 +135,7 @@ public class StatelessXmlReporterTest
stats.testSucceeded( t2 );
StatelessXmlReporter reporter = new StatelessXmlReporter( reportDir, null, false, 0,
- new ConcurrentHashMap<String, Deque<WrappedReportEntry>>(), XSD );
+ new ConcurrentHashMap<String, Deque<WrappedReportEntry>>(), XSD, DEFAULT, DEFAULT, DEFAULT );
reporter.testSetCompleted( testSetReportEntry, stats );
FileInputStream fileInputStream = new FileInputStream( expectedReportFile );
@@ -213,7 +214,7 @@ public class StatelessXmlReporterTest
StatelessXmlReporter reporter =
new StatelessXmlReporter( reportDir, null, false, 1,
- new HashMap<String, Deque<WrappedReportEntry>>(), XSD );
+ new HashMap<String, Deque<WrappedReportEntry>>(), XSD, DEFAULT, DEFAULT, DEFAULT );
reporter.testSetCompleted( testSetReportEntry, stats );
reporter.testSetCompleted( testSetReportEntry, rerunStats );
diff --git a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/WrappedReportEntryTest.java b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/WrappedReportEntryTest.java
index 014f722..abbc093 100644
--- a/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/WrappedReportEntryTest.java
+++ b/maven-surefire-common/src/test/java/org/apache/maven/plugin/surefire/report/WrappedReportEntryTest.java
@@ -50,7 +50,10 @@ public class WrappedReportEntryTest
WrappedReportEntry wr = new WrappedReportEntry( reportEntry, null, 12, null, null );
assertEquals( "surefire.testcase.JunitParamsTest.testSum", wr.getClassMethodName() );
assertEquals( "surefire.testcase.JunitParamsTest", wr.getReportSourceName() );
+ assertEquals( "surefire.testcase.JunitParamsTest", wr.getReportSourceName( "" ) );
assertEquals( "surefire.testcase.JunitParamsTest(BDD)", wr.getReportSourceName( "BDD" ) );
+ assertEquals( "surefire.testcase.JunitParamsTest", wr.getSourceName( "" ) );
+ assertEquals( "surefire.testcase.JunitParamsTest(BDD)", wr.getSourceName( "BDD" ) );
assertEquals( "testSum", wr.getReportName() );
assertFalse(wr.isSucceeded());
assertFalse( wr.isErrorOrFailure() );
@@ -68,6 +71,7 @@ public class WrappedReportEntryTest
assertEquals( "surefire.testcase.JunitParamsTest.testSum", wr.getClassMethodName() );
assertEquals( "dn1", wr.getReportSourceName() );
assertEquals( "dn1(BDD)", wr.getReportSourceName( "BDD" ) );
+ assertEquals( "surefire.testcase.JunitParamsTest(BDD)", wr.getSourceName( "BDD" ) );
assertEquals( "dn2", wr.getReportName() );
assertFalse(wr.isSucceeded());
assertTrue(wr.isErrorOrFailure());
diff --git a/surefire-extensions-api/src/main/java/org/apache/maven/surefire/extensions/SourceNameType.java b/surefire-extensions-api/src/main/java/org/apache/maven/surefire/extensions/SourceNameType.java
index dc49f48..ab3ee96 100644
--- a/surefire-extensions-api/src/main/java/org/apache/maven/surefire/extensions/SourceNameType.java
+++ b/surefire-extensions-api/src/main/java/org/apache/maven/surefire/extensions/SourceNameType.java
@@ -28,7 +28,7 @@ package org.apache.maven.surefire.extensions;
public enum SourceNameType
{
/**
- * Fully qualified Java class or name.
+ * Fully qualified Java class or method name.
*/
DEFAULT,
diff --git a/surefire-extensions-api/src/main/java/org/apache/maven/surefire/extensions/StatelessReporter.java b/surefire-extensions-api/src/main/java/org/apache/maven/surefire/extensions/StatelessReporter.java
index a8f8586..ebe90a3 100644
--- a/surefire-extensions-api/src/main/java/org/apache/maven/surefire/extensions/StatelessReporter.java
+++ b/surefire-extensions-api/src/main/java/org/apache/maven/surefire/extensions/StatelessReporter.java
@@ -26,10 +26,10 @@ import java.util.EventObject;
*
* @author <a href="mailto:tibordigana@apache.org">Tibor Digana (tibor17)</a>
* @since 3.0.0-M4
- * @param <T> Generic type of event type
+ * @param <E> Generic type of event type
* @param <C> mojo config
*/
-public abstract class StatelessReporter<T extends EventObject, C extends StatelessReportMojoConfiguration>
+public abstract class StatelessReporter<E extends EventObject, C extends StatelessReportMojoConfiguration>
{
private boolean disableXmlReport;
private SourceNameType useFileName;
@@ -41,7 +41,9 @@ public abstract class StatelessReporter<T extends EventObject, C extends Statele
*
* @return reporter object
*/
- public abstract StatelessReportEventListener<T> createStatelessReportEventListener( C configuration );
+ public abstract StatelessReportEventListener<E> createStatelessReportEventListener( C configuration );
+
+ public abstract Object clone( ClassLoader target );
public boolean isDisableXmlReport()
{