Class TestParameterInjector
java.lang.Object
org.junit.runner.Runner
org.junit.runners.ParentRunner<org.junit.runners.model.FrameworkMethod>
org.junit.runners.BlockJUnit4ClassRunner
com.google.testing.junit.testparameterinjector.TestParameterInjector
- All Implemented Interfaces:
org.junit.runner.Describable,org.junit.runner.manipulation.Filterable,org.junit.runner.manipulation.Orderable,org.junit.runner.manipulation.Sortable
public final class TestParameterInjector
extends org.junit.runners.BlockJUnit4ClassRunner
A JUnit4 test runner which knows how to instantiate and run test classes where each test case may
be parameterized with its own unique set of test parameters.
-
Constructor Summary
Constructors Constructor Description TestParameterInjector(Class<?> testClass) -
Method Summary
Modifier and Type Method Description protected voidcollectInitializationErrors(List<Throwable> errors)protected com.google.common.collect.ImmutableList<org.junit.runners.model.FrameworkMethod>computeTestMethods()protected ObjectcreateTest()protected com.google.testing.junit.testparameterinjector.TestMethodProcessorListcreateTestMethodProcessorList()Returns the TestMethodProcessorList to use.protected voidfinalizeCreatedTestInstance(Object testInstance)This method is run to perform optional additional operations on the test instance, right after it was created.protected List<org.junit.rules.TestRule>getExtraTestRules()TestRules that will be executed before the ones defined in the test class.protected com.google.common.collect.ImmutableList<Class<? extends Annotation>>getSupportedTestAnnotations()Returns classes used as annotations to indicate test methods.protected org.junit.runners.model.StatementmethodBlock(org.junit.runners.model.FrameworkMethod method)protected org.junit.runners.model.StatementmethodInvoker(org.junit.runners.model.FrameworkMethod frameworkMethod, Object testObject)protected booleanshouldSortTestMethodsDeterministically()Deprecated.OverridesortTestMethods(java.util.stream.Stream<org.junit.runners.model.FrameworkMethod>)with preferred sorting strategy.protected Stream<org.junit.runners.model.FrameworkMethod>sortTestMethods(Stream<org.junit.runners.model.FrameworkMethod> methods)Sort test methods (across different TestMethodProcessors).protected voidvalidatePublicVoidNoArgMethods(Class<? extends Annotation> annotation, boolean isStatic, List<Throwable> errors)protected voidvalidateTestMethods(List<Throwable> errorsReturned)protected voidvalidateZeroArgConstructor(List<Throwable> errorsReturned)Methods inherited from class org.junit.runners.BlockJUnit4ClassRunner
createTest, describeChild, getChildren, getTestRules, isIgnored, possiblyExpectingExceptions, rules, runChild, testName, validateConstructor, validateFields, validateInstanceMethods, validateNoNonStaticInnerClass, validateOnlyOneConstructor, withAfters, withBefores, withPotentialTimeout
-
Constructor Details
-
TestParameterInjector
public TestParameterInjector(Class<?> testClass) throws org.junit.runners.model.InitializationError- Throws:
org.junit.runners.model.InitializationError
-
-
Method Details
-
createTestMethodProcessorList
protected com.google.testing.junit.testparameterinjector.TestMethodProcessorList createTestMethodProcessorList()Returns the TestMethodProcessorList to use. This is meant to be overridden by subclasses. -
finalizeCreatedTestInstance
This method is run to perform optional additional operations on the test instance, right after it was created. -
shouldSortTestMethodsDeterministically
Deprecated.OverridesortTestMethods(java.util.stream.Stream<org.junit.runners.model.FrameworkMethod>)with preferred sorting strategy.If true, all test methods (across different TestMethodProcessors) will be sorted in a deterministic way.Deterministic means that the order will not change, even when tests are added/removed or between releases.
-
sortTestMethods
protected Stream<org.junit.runners.model.FrameworkMethod> sortTestMethods(Stream<org.junit.runners.model.FrameworkMethod> methods)Sort test methods (across different TestMethodProcessors).This should be deterministic. The order should not change, even when tests are added/removed or between releases.
-
getSupportedTestAnnotations
protected com.google.common.collect.ImmutableList<Class<? extends Annotation>> getSupportedTestAnnotations()Returns classes used as annotations to indicate test methods.Defaults to
Test. -
getExtraTestRules
TestRules that will be executed before the ones defined in the test class. This is meant to be overridden by subclasses. -
computeTestMethods
protected final com.google.common.collect.ImmutableList<org.junit.runners.model.FrameworkMethod> computeTestMethods()- Overrides:
computeTestMethodsin classorg.junit.runners.BlockJUnit4ClassRunner
-
methodBlock
protected final org.junit.runners.model.Statement methodBlock(org.junit.runners.model.FrameworkMethod method)- Overrides:
methodBlockin classorg.junit.runners.BlockJUnit4ClassRunner
-
methodInvoker
protected final org.junit.runners.model.Statement methodInvoker(org.junit.runners.model.FrameworkMethod frameworkMethod, Object testObject)- Overrides:
methodInvokerin classorg.junit.runners.BlockJUnit4ClassRunner
-
validateZeroArgConstructor
- Overrides:
validateZeroArgConstructorin classorg.junit.runners.BlockJUnit4ClassRunner
-
validateTestMethods
- Overrides:
validateTestMethodsin classorg.junit.runners.BlockJUnit4ClassRunner
-
collectInitializationErrors
- Overrides:
collectInitializationErrorsin classorg.junit.runners.BlockJUnit4ClassRunner
-
createTest
- Overrides:
createTestin classorg.junit.runners.BlockJUnit4ClassRunner- Throws:
Exception
-
validatePublicVoidNoArgMethods
protected final void validatePublicVoidNoArgMethods(Class<? extends Annotation> annotation, boolean isStatic, List<Throwable> errors)- Overrides:
validatePublicVoidNoArgMethodsin classorg.junit.runners.ParentRunner<org.junit.runners.model.FrameworkMethod>
-