Package org.junit.runners.parameterized
Class BlockJUnit4ClassRunnerWithParameters
- java.lang.Object
-
- org.junit.runner.Runner
-
- org.junit.runners.ParentRunner<FrameworkMethod>
-
- org.junit.runners.BlockJUnit4ClassRunner
-
- org.junit.runners.parameterized.BlockJUnit4ClassRunnerWithParameters
-
- All Implemented Interfaces:
Describable,Filterable,Sortable
public class BlockJUnit4ClassRunnerWithParameters extends BlockJUnit4ClassRunner
ABlockJUnit4ClassRunnerwith parameters support. Parameters can be injected via constructor or into annotated fields.
-
-
Constructor Summary
Constructors Constructor Description BlockJUnit4ClassRunnerWithParameters(TestWithParameters test)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected StatementclassBlock(RunNotifier notifier)Constructs aStatementto run all of the tests in the test class.ObjectcreateTest()Returns a new fixture for running a test.protected StringgetName()Returns a name used to describe this Runnerprotected Annotation[]getRunnerAnnotations()protected StringtestName(FrameworkMethod method)Returns the name that describesmethodforDescriptions.protected voidvalidateConstructor(List<Throwable> errors)Adds toerrorsif the test class has more than one constructor, or if the constructor takes parameters.protected voidvalidateFields(List<Throwable> errors)-
Methods inherited from class org.junit.runners.BlockJUnit4ClassRunner
collectInitializationErrors, computeTestMethods, describeChild, getChildren, getTestRules, isIgnored, methodBlock, methodInvoker, possiblyExpectingExceptions, rules, runChild, validateInstanceMethods, validateNoNonStaticInnerClass, validateOnlyOneConstructor, validateTestMethods, validateZeroArgConstructor, withAfters, withBefores, withPotentialTimeout
-
Methods inherited from class org.junit.runners.ParentRunner
childrenInvoker, classRules, createTestClass, filter, getDescription, getTestClass, run, runLeaf, setScheduler, sort, validatePublicVoidNoArgMethods, withAfterClasses, withBeforeClasses
-
-
-
-
Constructor Detail
-
BlockJUnit4ClassRunnerWithParameters
public BlockJUnit4ClassRunnerWithParameters(TestWithParameters test) throws InitializationError
- Throws:
InitializationError
-
-
Method Detail
-
createTest
public Object createTest() throws Exception
Description copied from class:BlockJUnit4ClassRunnerReturns a new fixture for running a test. Default implementation executes the test class's no-argument constructor (validation should have ensured one exists).- Overrides:
createTestin classBlockJUnit4ClassRunner- Throws:
Exception
-
getName
protected String getName()
Description copied from class:ParentRunnerReturns a name used to describe this Runner- Overrides:
getNamein classParentRunner<FrameworkMethod>
-
testName
protected String testName(FrameworkMethod method)
Description copied from class:BlockJUnit4ClassRunnerReturns the name that describesmethodforDescriptions. Default implementation is the method's name- Overrides:
testNamein classBlockJUnit4ClassRunner
-
validateConstructor
protected void validateConstructor(List<Throwable> errors)
Description copied from class:BlockJUnit4ClassRunnerAdds toerrorsif the test class has more than one constructor, or if the constructor takes parameters. Override if a subclass requires different validation rules.- Overrides:
validateConstructorin classBlockJUnit4ClassRunner
-
validateFields
protected void validateFields(List<Throwable> errors)
- Overrides:
validateFieldsin classBlockJUnit4ClassRunner
-
classBlock
protected Statement classBlock(RunNotifier notifier)
Description copied from class:ParentRunnerConstructs aStatementto run all of the tests in the test class. Override to add pre-/post-processing. Here is an outline of the implementation:- Determine the children to be run using
ParentRunner.getChildren()(subject to any imposed filter and sort). - If there are any children remaining after filtering and ignoring,
construct a statement that will:
- Apply all
ClassRules on the test-class and superclasses. - Run all non-overridden
@BeforeClassmethods on the test-class and superclasses; if any throws an Exception, stop execution and pass the exception on. - Run all remaining tests on the test-class.
- Run all non-overridden
@AfterClassmethods on the test-class and superclasses: exceptions thrown by previous steps are combined, if necessary, with exceptions from AfterClass methods into aMultipleFailureException.
- Apply all
- Overrides:
classBlockin classParentRunner<FrameworkMethod>- Returns:
Statement
- Determine the children to be run using
-
getRunnerAnnotations
protected Annotation[] getRunnerAnnotations()
- Overrides:
getRunnerAnnotationsin classParentRunner<FrameworkMethod>- Returns:
- the annotations that should be attached to this runner's description.
-
-