Skip to content

Commit d27a848

Browse files
Remove TestListResolver#optionallyWildcardFilter
1 parent b1615a9 commit d27a848

File tree

8 files changed

+25
-78
lines changed

8 files changed

+25
-78
lines changed

surefire-api/src/main/java/org/apache/maven/surefire/api/testset/TestListResolver.java

Lines changed: 1 addition & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,6 @@ public class TestListResolver
4949
{
5050
private static final String JAVA_CLASS_FILE_EXTENSION = ".class";
5151

52-
private static final TestListResolver WILDCARD = new TestListResolver( "*" + JAVA_CLASS_FILE_EXTENSION );
53-
54-
private static final TestListResolver EMPTY = new TestListResolver( "" );
55-
5652
private final Set<ResolvedTest> includedPatterns;
5753

5854
private final Set<ResolvedTest> excludedPatterns;
@@ -135,27 +131,6 @@ public boolean hasMethodPatterns()
135131
return hasIncludedMethodPatterns() || hasExcludedMethodPatterns();
136132
}
137133

138-
/**
139-
*
140-
* @param resolver filter possibly having method patterns
141-
* @return {@code resolver} if {@link TestListResolver#hasMethodPatterns() resolver.hasMethodPatterns()}
142-
* returns {@code true}; Otherwise wildcard filter {@code *.class} is returned.
143-
*/
144-
public static TestListResolver optionallyWildcardFilter( TestListResolver resolver )
145-
{
146-
return resolver.hasMethodPatterns() ? resolver : WILDCARD;
147-
}
148-
149-
public static TestListResolver getEmptyTestListResolver()
150-
{
151-
return EMPTY;
152-
}
153-
154-
public final boolean isWildcard()
155-
{
156-
return equals( WILDCARD );
157-
}
158-
159134
public TestFilter<String, String> and( final TestListResolver another )
160135
{
161136
return new TestFilter<String, String>()
@@ -238,7 +213,7 @@ public boolean shouldRun( String testClassFile, String methodName )
238213
@Override
239214
public boolean isEmpty()
240215
{
241-
return equals( EMPTY );
216+
return includedPatterns.isEmpty() && excludedPatterns.isEmpty();
242217
}
243218

244219
@Override

surefire-api/src/test/java/org/apache/maven/surefire/api/testset/TestListResolverTest.java

Lines changed: 6 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@
1919
* under the License.
2020
*/
2121

22-
import junit.framework.TestCase;
23-
2422
import java.util.ArrayList;
2523
import java.util.Collection;
2624
import java.util.Collections;
@@ -29,12 +27,14 @@
2927
import java.util.LinkedHashSet;
3028
import java.util.Set;
3129

32-
import static java.util.Collections.addAll;
33-
import static org.apache.maven.surefire.api.testset.TestListResolver.newTestListResolver;
34-
import static org.apache.maven.surefire.api.testset.ResolvedTest.Type.CLASS;
30+
import junit.framework.TestCase;
31+
3532
import static java.util.Arrays.asList;
33+
import static java.util.Collections.addAll;
3634
import static java.util.Collections.emptySet;
3735
import static java.util.Collections.singleton;
36+
import static org.apache.maven.surefire.api.testset.ResolvedTest.Type.CLASS;
37+
import static org.apache.maven.surefire.api.testset.TestListResolver.newTestListResolver;
3838
import static org.hamcrest.MatcherAssert.assertThat;
3939
import static org.hamcrest.Matchers.is;
4040

@@ -257,7 +257,7 @@ public void testShouldRunSuiteWithIncludedMethods()
257257

258258
public void testShouldRunAny()
259259
{
260-
TestListResolver resolver = TestListResolver.getEmptyTestListResolver();
260+
TestListResolver resolver = new TestListResolver( "" );
261261
assertTrue( resolver.shouldRun( "pkg/MyTest.class", null ) );
262262

263263
resolver = new TestListResolver( Collections.<String>emptySet() );
@@ -365,7 +365,6 @@ public void testTestListResolverWithMethods()
365365
assertTrue( resolver.shouldRun( "BTest.class", null ) );
366366
assertFalse( resolver.shouldRun( "BTest.class", "failedTest" ) );
367367
assertTrue( resolver.shouldRun( "CTest.class", null ) );
368-
assertFalse( TestListResolver.optionallyWildcardFilter( resolver ).isEmpty() );
369368
}
370369

371370
private static Set<ResolvedTest> toSet( ResolvedTest... patterns )
@@ -401,19 +400,6 @@ public void testInclusiveWithDefaultExclusivePattern()
401400
assertTrue( runnable );
402401
}
403402

404-
public void testWildcard()
405-
{
406-
TestListResolver tlr = TestListResolver.optionallyWildcardFilter( new TestListResolver( (String) null ) );
407-
assertThat( tlr, is( new TestListResolver( "**/*.class" ) ) );
408-
assertThat( tlr.isWildcard(), is( true ) );
409-
assertThat( tlr.isEmpty(), is( false ) );
410-
411-
tlr = TestListResolver.optionallyWildcardFilter( new TestListResolver( "**/**/MethodLessPattern.class" ) );
412-
assertThat( tlr, is( new TestListResolver( "**/*.class" ) ) );
413-
assertThat( tlr.isWildcard(), is( true ) );
414-
assertThat( tlr.isEmpty(), is( false ) );
415-
}
416-
417403
public void testRegexRuleViolationQuotedHashMark()
418404
{
419405
try

surefire-providers/common-junit48/src/test/java/org/apache/maven/surefire/common/junit48/FilterFactoryTest.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -933,8 +933,7 @@ public void testWithJUnitCoreFirstClassAndSingleMethod()
933933
@Test
934934
public void testShouldRunSuite()
935935
{
936-
TestListResolver filter = new TestListResolver( "Su?te" );
937-
filter = TestListResolver.optionallyWildcardFilter( filter );
936+
TestListResolver filter = new TestListResolver( "*.class" );
938937
JUnitCore core = new JUnitCore();
939938
Result result = core.run( Request.classes( Suite.class ).filterWith( new MethodFilter( filter ) ) );
940939
assertTrue( result.wasSuccessful() );
@@ -951,7 +950,6 @@ public void testShouldRunParameterized()
951950
+ "PT#testC*, "
952951
+ "!PT.java#testCY[?],"
953952
+ "%regex[.*.tests.pt.PT.class#w.*|x.*T.*]" );
954-
filter = TestListResolver.optionallyWildcardFilter( filter );
955953
JUnitCore core = new JUnitCore();
956954
Result result = core.run( Request.classes( PT.class ).filterWith( new MethodFilter( filter ) ) );
957955
assertTrue( result.wasSuccessful() );
@@ -970,7 +968,6 @@ public void testShouldRunParameterizedWithPlusDelimiter()
970968
// x12T35[0], x12T35[1]
971969
TestListResolver filter =
972970
new TestListResolver( "%regex[.*.PT.* # w.*|x(\\d+)T(\\d+)\\[(\\d+)\\]]" );
973-
filter = TestListResolver.optionallyWildcardFilter( filter );
974971
JUnitCore core = new JUnitCore();
975972
Result result = core.run( Request.classes( PT.class ).filterWith( new MethodFilter( filter ) ) );
976973
assertTrue( result.wasSuccessful() );

surefire-providers/surefire-junit-platform/src/main/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProvider.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232
import static org.apache.maven.surefire.api.report.ConsoleOutputCapture.startCapture;
3333
import static org.apache.maven.surefire.api.report.RunMode.NORMAL_RUN;
3434
import static org.apache.maven.surefire.api.report.RunMode.RERUN_TEST_AFTER_FAILURE;
35-
import static org.apache.maven.surefire.api.testset.TestListResolver.optionallyWildcardFilter;
3635
import static org.apache.maven.surefire.api.util.TestsToRun.fromClass;
3736
import static org.apache.maven.surefire.shared.utils.StringUtils.isBlank;
3837
import static org.junit.platform.engine.discovery.DiscoverySelectors.selectClass;
@@ -56,6 +55,7 @@
5655
import org.apache.maven.surefire.api.report.ReporterException;
5756
import org.apache.maven.surefire.api.report.ReporterFactory;
5857
import org.apache.maven.surefire.api.suite.RunResult;
58+
import org.apache.maven.surefire.api.testset.TestListResolver;
5959
import org.apache.maven.surefire.api.testset.TestSetFailedException;
6060
import org.apache.maven.surefire.api.util.ScanResult;
6161
import org.apache.maven.surefire.api.util.SurefireReflectionException;
@@ -275,11 +275,11 @@ private Filter<?>[] newFilters()
275275
.map( TagFilter::excludeTags )
276276
.ifPresent( filters::add );
277277

278-
of( optionallyWildcardFilter( parameters.getTestRequest().getTestListResolver() ) )
279-
.filter( f -> !f.isEmpty() )
280-
.filter( f -> !f.isWildcard() )
281-
.map( TestMethodFilter::new )
282-
.ifPresent( filters::add );
278+
TestListResolver resolver = parameters.getTestRequest().getTestListResolver();
279+
if ( resolver.hasMethodPatterns() )
280+
{
281+
filters.add( new TestMethodFilter( resolver ) );
282+
}
283283

284284
getPropertiesList( INCLUDE_JUNIT5_ENGINES_PROP )
285285
.map( EngineFilter::includeEngines )

surefire-providers/surefire-junit-platform/src/test/java/org/apache/maven/surefire/junitplatform/JUnitPlatformProviderTest.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -899,7 +899,6 @@ public void shouldFilterTestMethod()
899899
ProviderParameters providerParameters = providerParametersMock();
900900
TestListResolver testListResolver = new TestListResolver( "**/*Test#test*" );
901901
assertFalse( testListResolver.isEmpty() );
902-
assertFalse( testListResolver.isWildcard() );
903902
TestRequest request = new TestRequest( null, null, testListResolver, 0 );
904903
when( providerParameters.getTestRequest() ).thenReturn( request );
905904

@@ -926,7 +925,6 @@ public void shouldNotFilterEmpty()
926925
ProviderParameters providerParameters = providerParametersMock();
927926
TestListResolver testListResolver = new TestListResolver( "" );
928927
assertTrue( testListResolver.isEmpty() );
929-
assertFalse( testListResolver.isWildcard() );
930928
TestRequest request = new TestRequest( null, null, testListResolver, 0 );
931929
when( providerParameters.getTestRequest() ).thenReturn( request );
932930

@@ -941,7 +939,6 @@ public void shouldNotFilterWildcard()
941939
{
942940
ProviderParameters providerParameters = providerParametersMock();
943941
TestListResolver testListResolver = new TestListResolver( "*.java" );
944-
assertTrue( testListResolver.isWildcard() );
945942
assertFalse( testListResolver.isEmpty() );
946943
TestRequest request = new TestRequest( null, null, testListResolver, 0 );
947944
when( providerParameters.getTestRequest() ).thenReturn( request );

surefire-providers/surefire-junit4/src/main/java/org/apache/maven/surefire/junit4/JUnit4Provider.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@
6767
import static org.apache.maven.surefire.common.junit4.Notifier.pureNotifier;
6868
import static org.apache.maven.surefire.api.report.ConsoleOutputCapture.startCapture;
6969
import static org.apache.maven.surefire.api.report.SimpleReportEntry.withException;
70-
import static org.apache.maven.surefire.api.testset.TestListResolver.optionallyWildcardFilter;
7170
import static org.apache.maven.surefire.api.util.TestsToRun.fromClass;
7271
import static org.apache.maven.surefire.api.util.internal.ObjectUtils.systemProps;
7372
import static org.junit.runner.Request.aClass;
@@ -274,14 +273,13 @@ private void executeWithRerun( Class<?> clazz, Notifier notifier, RunModeSetter
274273
{
275274
JUnitTestFailureListener failureListener = new JUnitTestFailureListener();
276275
notifier.addListener( failureListener );
277-
boolean hasMethodFilter = testResolver != null && testResolver.hasMethodPatterns();
278276

279277
try
280278
{
281279
try
282280
{
283281
notifier.asFailFast( isFailFast() );
284-
execute( clazz, notifier, hasMethodFilter ? createMethodFilter() : null );
282+
execute( clazz, notifier, createMethodFilter() );
285283
}
286284
finally
287285
{
@@ -432,7 +430,6 @@ private static boolean hasFilteredOutAllChildren( Description description )
432430

433431
private Filter createMethodFilter()
434432
{
435-
TestListResolver methodFilter = optionallyWildcardFilter( testResolver );
436-
return methodFilter.isEmpty() || methodFilter.isWildcard() ? null : new TestResolverFilter( methodFilter );
433+
return testResolver != null && testResolver.hasMethodPatterns() ? new TestResolverFilter( testResolver ) : null;
437434
}
438435
}

surefire-providers/surefire-junit47/src/main/java/org/apache/maven/surefire/junitcore/JUnitCoreProvider.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@
4949
import static org.apache.maven.surefire.api.report.ConsoleOutputCapture.startCapture;
5050
import static org.apache.maven.surefire.api.report.RunMode.NORMAL_RUN;
5151
import static org.apache.maven.surefire.api.report.RunMode.RERUN_TEST_AFTER_FAILURE;
52-
import static org.apache.maven.surefire.api.testset.TestListResolver.optionallyWildcardFilter;
5352
import static org.apache.maven.surefire.api.util.TestsToRun.fromClass;
5453
import static org.apache.maven.surefire.common.junit4.JUnit4ProviderUtil.generateFailingTestDescriptions;
5554
import static org.apache.maven.surefire.common.junit4.JUnit4RunListenerFactory.createCustomListeners;
@@ -276,16 +275,14 @@ private Filter createJUnit48Filter()
276275
final FilterFactory factory = new FilterFactory( testClassLoader );
277276
Map<String, String> props = providerParameters.getProviderProperties();
278277
Filter groupFilter = factory.canCreateGroupFilter( props ) ? factory.createGroupFilter( props ) : null;
279-
TestListResolver methodFilter = optionallyWildcardFilter( testResolver );
280-
boolean onlyGroups = methodFilter.isEmpty() || methodFilter.isWildcard();
281-
if ( onlyGroups )
278+
if ( testResolver.hasMethodPatterns() )
282279
{
283-
return groupFilter;
280+
Filter jUnitMethodFilter = factory.createMethodFilter( testResolver );
281+
return groupFilter == null ? jUnitMethodFilter : factory.and( groupFilter, jUnitMethodFilter );
284282
}
285283
else
286284
{
287-
Filter jUnitMethodFilter = factory.createMethodFilter( methodFilter );
288-
return groupFilter == null ? jUnitMethodFilter : factory.and( groupFilter, jUnitMethodFilter );
285+
return groupFilter;
289286
}
290287
}
291288

surefire-providers/surefire-testng/src/main/java/org/apache/maven/surefire/testng/TestNGProvider.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,6 @@
4747

4848
import static org.apache.maven.surefire.api.report.ConsoleOutputCapture.startCapture;
4949
import static org.apache.maven.surefire.api.report.RunMode.NORMAL_RUN;
50-
import static org.apache.maven.surefire.api.testset.TestListResolver.getEmptyTestListResolver;
51-
import static org.apache.maven.surefire.api.testset.TestListResolver.optionallyWildcardFilter;
5250
import static org.apache.maven.surefire.api.util.TestsToRun.fromClass;
5351

5452
/**
@@ -205,7 +203,7 @@ public void update( Command command )
205203
private TestNGDirectoryTestSuite newDirectorySuite()
206204
{
207205
return new TestNGDirectoryTestSuite( testRequest.getTestSourceDirectory().toString(), providerProperties,
208-
reporterConfiguration.getReportsDirectory(), getTestFilter(),
206+
reporterConfiguration.getReportsDirectory(), getTestMethodFilterFilter(),
209207
mainCliOptions, getSkipAfterFailureCount() );
210208
}
211209

@@ -247,13 +245,13 @@ private TestsToRun scanClassPath()
247245
private boolean hasSpecificTests()
248246
{
249247
TestListResolver specificTestPatterns = testRequest.getTestListResolver();
250-
return !specificTestPatterns.isEmpty() && !specificTestPatterns.isWildcard();
248+
return !specificTestPatterns.isEmpty();
251249
}
252250

253-
private TestListResolver getTestFilter()
251+
private TestListResolver getTestMethodFilterFilter()
254252
{
255-
TestListResolver filter = optionallyWildcardFilter( testRequest.getTestListResolver() );
256-
return filter.isWildcard() ? getEmptyTestListResolver() : filter;
253+
TestListResolver filter = testRequest.getTestListResolver();
254+
return filter.hasMethodPatterns() ? filter : null;
257255
}
258256

259257
// If we have access to IResultListener, return a ConfigurationAwareTestNGReporter.

0 commit comments

Comments
 (0)