1 package org.apache.maven.surefire.junit4;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.lang.reflect.Method;
23
24 import org.apache.maven.surefire.testset.TestSetFailedException;
25 import org.apache.maven.surefire.util.internal.StringUtils;
26 import org.codehaus.plexus.util.SelectorUtils;
27 import org.junit.runner.Request;
28 import org.junit.runner.Runner;
29 import org.junit.runner.notification.RunNotifier;
30
31 public class JUnit4TestSet
32 {
33
34 public static void execute( Class testClass, RunNotifier fNotifier, String testMethod )
35 throws TestSetFailedException
36 {
37 if ( !StringUtils.isBlank( testMethod ) )
38 {
39 Method[] methods = testClass.getMethods();
40 for (int i = 0,size = methods.length;i<size;i++)
41 {
42 if ( SelectorUtils.match( testMethod, methods[i].getName() ) )
43 {
44 Runner junitTestRunner = Request.method( testClass, methods[i].getName() ).getRunner();
45 junitTestRunner.run( fNotifier );
46 }
47 }
48 return;
49 }
50
51 Runner junitTestRunner = Request.aClass( testClass ).getRunner();
52
53 junitTestRunner.run( fNotifier );
54 }
55 }
56