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
,Orderable
,Sortable
public class BlockJUnit4ClassRunnerWithParameters extends BlockJUnit4ClassRunner
ABlockJUnit4ClassRunner
with 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 Statement
classBlock(RunNotifier notifier)
Constructs aStatement
to run all of the tests in the test class.java.lang.Object
createTest()
Returns a new fixture for running a test.protected java.lang.String
getName()
Returns a name used to describe this Runnerprotected java.lang.annotation.Annotation[]
getRunnerAnnotations()
protected java.lang.String
testName(FrameworkMethod method)
Returns the name that describesmethod
forDescription
s.protected void
validateConstructor(java.util.List<java.lang.Throwable> errors)
Adds toerrors
if the test class has more than one constructor, or if the constructor takes parameters.protected void
validateFields(java.util.List<java.lang.Throwable> errors)
-
Methods inherited from class org.junit.runners.BlockJUnit4ClassRunner
collectInitializationErrors, computeTestMethods, createTest, 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, order, run, runLeaf, setScheduler, sort, validatePublicVoidNoArgMethods, withAfterClasses, withBeforeClasses, withInterruptIsolation
-
-
-
-
Constructor Detail
-
BlockJUnit4ClassRunnerWithParameters
public BlockJUnit4ClassRunnerWithParameters(TestWithParameters test) throws InitializationError
- Throws:
InitializationError
-
-
Method Detail
-
createTest
public java.lang.Object createTest() throws java.lang.Exception
Description copied from class:BlockJUnit4ClassRunner
Returns a new fixture for running a test. Default implementation executes the test class's no-argument constructor (validation should have ensured one exists).- Overrides:
createTest
in classBlockJUnit4ClassRunner
- Throws:
java.lang.Exception
-
getName
protected java.lang.String getName()
Description copied from class:ParentRunner
Returns a name used to describe this Runner- Overrides:
getName
in classParentRunner<FrameworkMethod>
-
testName
protected java.lang.String testName(FrameworkMethod method)
Description copied from class:BlockJUnit4ClassRunner
Returns the name that describesmethod
forDescription
s. Default implementation is the method's name- Overrides:
testName
in classBlockJUnit4ClassRunner
-
validateConstructor
protected void validateConstructor(java.util.List<java.lang.Throwable> errors)
Description copied from class:BlockJUnit4ClassRunner
Adds toerrors
if the test class has more than one constructor, or if the constructor takes parameters. Override if a subclass requires different validation rules.- Overrides:
validateConstructor
in classBlockJUnit4ClassRunner
-
validateFields
protected void validateFields(java.util.List<java.lang.Throwable> errors)
- Overrides:
validateFields
in classBlockJUnit4ClassRunner
-
classBlock
protected Statement classBlock(RunNotifier notifier)
Description copied from class:ParentRunner
Constructs aStatement
to 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
ClassRule
s on the test-class and superclasses. - Run all non-overridden
@BeforeClass
methods 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
@AfterClass
methods 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:
classBlock
in classParentRunner<FrameworkMethod>
- Returns:
Statement
- Determine the children to be run using
-
getRunnerAnnotations
protected java.lang.annotation.Annotation[] getRunnerAnnotations()
- Overrides:
getRunnerAnnotations
in classParentRunner<FrameworkMethod>
- Returns:
- the annotations that should be attached to this runner's description.
-
-