• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package org.testng;
2 
3 import java.io.Serializable;
4 import java.util.List;
5 
6 /**
7  * This interface is used to augment or replace TestNG's algorithm to
8  * decide whether a test method should be included in a test run.
9  *
10  * Created on Sep 26, 2005
11  * @author cbeust
12  */
13 public interface IMethodSelector extends Serializable {
14 
15   /**
16    * @param context The selector context.  The implementation of this method
17    * can invoke setHalted(true) to indicate that no other Method Selector
18    * should be invoked by TestNG after this one.  Additionally, this
19    * implementation can manipulate the Map object returned by
20    * getUserData().
21    * @param method The test method
22    * @param isTestMethod true if this is a @Test method, false if it's a
23    * configuration method
24    * @return true if this method should be included in the test run, false
25    * otherwise
26    */
includeMethod(IMethodSelectorContext context, ITestNGMethod method, boolean isTestMethod)27   public boolean includeMethod(IMethodSelectorContext context,
28       ITestNGMethod method, boolean isTestMethod);
29 
30   /**
31    * Invoked when all the test methods are known so that the method selector
32    * can perform additional work, such as adding the transitive closure of
33    * all the groups being included and depended upon.
34    */
setTestMethods(List<ITestNGMethod> testMethods)35   public void setTestMethods(List<ITestNGMethod> testMethods);
36 
37 }
38