org.junit.runner
Class Request

java.lang.Object
  extended by org.junit.runner.Request

public abstract class Request
extends java.lang.Object

A Request is an abstract description of tests to be run. Older versions of JUnit did not need such a concept--tests to be run were described either by classes containing tests or a tree of Tests. However, we want to support filtering and sorting, so we need a more abstract specification than the tests themselves and a richer specification than just the classes.

The flow when JUnit runs tests is that a Request specifies some tests to be run -> a Runner is created for each class implied by the Request -> the Runner returns a detailed Description which is a tree structure of the tests to be run.


Constructor Summary
Request()
           
 
Method Summary
static Request aClass(java.lang.Class<?> clazz)
          Create a Request that, when processed, will run all the tests in a class.
static Request classes(java.lang.String collectionName, java.lang.Class... classes)
          Create a Request that, when processed, will run all the tests in a set of classes.
static Request errorReport(java.lang.Class<?> klass, java.lang.Throwable cause)
           
 Request filterWith(Description desiredDescription)
           
 Request filterWith(Filter filter)
           
abstract  Runner getRunner()
           
static Request method(java.lang.Class<?> clazz, java.lang.String methodName)
          Create a Request that, when processed, will run a single test.
 Request sortWith(java.util.Comparator<Description> comparator)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Request

public Request()
Method Detail

method

public static Request method(java.lang.Class<?> clazz,
                             java.lang.String methodName)
Create a Request that, when processed, will run a single test. This is done by filtering out all other tests. This method is used to support rerunning single tests.

Parameters:
clazz - the class of the test
methodName - the name of the test
Returns:
a Request that will cause a single test be run

aClass

public static Request aClass(java.lang.Class<?> clazz)
Create a Request that, when processed, will run all the tests in a class. The odd name is necessary because class is a reserved word.

Parameters:
clazz - the class containing the tests
Returns:
a Request that will cause all tests in the class to be run

classes

public static Request classes(java.lang.String collectionName,
                              java.lang.Class... classes)
Create a Request that, when processed, will run all the tests in a set of classes.

Parameters:
collectionName - a name to identify this suite of tests
classes - the classes containing the tests
Returns:
a Request that will cause all tests in the classes to be run

errorReport

public static Request errorReport(java.lang.Class<?> klass,
                                  java.lang.Throwable cause)

getRunner

public abstract Runner getRunner()

filterWith

public Request filterWith(Filter filter)

filterWith

public Request filterWith(Description desiredDescription)

sortWith

public Request sortWith(java.util.Comparator<Description> comparator)