Class DefensiveAllDefaultPossibilitiesBuilder
- java.lang.Object
-
- org.junit.runners.model.RunnerBuilder
-
- org.junit.internal.builders.AllDefaultPossibilitiesBuilder
-
- org.junit.vintage.engine.discovery.DefensiveAllDefaultPossibilitiesBuilder
-
class DefensiveAllDefaultPossibilitiesBuilder extends org.junit.internal.builders.AllDefaultPossibilitiesBuilderCustomization ofAllDefaultPossibilitiesBuilderfrom JUnit 4 to ignore certain classes that would otherwise be reported as errors or cause infinite recursion.- Since:
- 4.12
- See Also:
DefensiveAllDefaultPossibilitiesBuilder.DefensiveAnnotatedBuilder,DefensiveAllDefaultPossibilitiesBuilder.DefensiveJUnit4Builder,IgnoredClassRunner
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classDefensiveAllDefaultPossibilitiesBuilder.DefensiveAnnotatedBuilderCustomization ofAnnotatedBuilderthat ignores classes annotated with@RunWith(JUnitPlatform.class)to avoid infinite recursion.private static classDefensiveAllDefaultPossibilitiesBuilder.DefensiveJUnit4BuilderCustomization ofJUnit4Builderthat ignores classes that do not contain any test methods in order not to report errors for them.private static classDefensiveAllDefaultPossibilitiesBuilder.NullIgnoredBuilderCustomization ofIgnoredBuilderthat always returnsnull.
-
Field Summary
Fields Modifier and Type Field Description private org.junit.internal.builders.AnnotatedBuilderannotatedBuilderprivate org.junit.internal.builders.IgnoredBuilderignoredBuilderprivate org.junit.internal.builders.JUnit4Builderjunit4Builderprivate static Loggerlogger
-
Constructor Summary
Constructors Constructor Description DefensiveAllDefaultPossibilitiesBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.junit.internal.builders.AnnotatedBuilderannotatedBuilder()private org.junit.runner.RunnerdecorateIgnoredTestClass(org.junit.runner.Runner runner)Instead of checking for theIgnoreannotation and returning anIgnoredClassRunnerfromIgnoredBuilder, we've let the super class determine the regular runner that would have been used ifIgnorehadn't been present.protected org.junit.internal.builders.IgnoredBuilderignoredBuilder()protected org.junit.internal.builders.JUnit4Builderjunit4Builder()org.junit.runner.RunnerrunnerForClass(java.lang.Class<?> testClass)-
Methods inherited from class org.junit.internal.builders.AllDefaultPossibilitiesBuilder
junit3Builder, suiteMethodBuilder
-
-
-
-
Field Detail
-
logger
private static final Logger logger
-
annotatedBuilder
private final org.junit.internal.builders.AnnotatedBuilder annotatedBuilder
-
junit4Builder
private final org.junit.internal.builders.JUnit4Builder junit4Builder
-
ignoredBuilder
private final org.junit.internal.builders.IgnoredBuilder ignoredBuilder
-
-
Method Detail
-
runnerForClass
public org.junit.runner.Runner runnerForClass(java.lang.Class<?> testClass) throws java.lang.Throwable- Overrides:
runnerForClassin classorg.junit.internal.builders.AllDefaultPossibilitiesBuilder- Throws:
java.lang.Throwable
-
decorateIgnoredTestClass
private org.junit.runner.Runner decorateIgnoredTestClass(org.junit.runner.Runner runner)
Instead of checking for theIgnoreannotation and returning anIgnoredClassRunnerfromIgnoredBuilder, we've let the super class determine the regular runner that would have been used ifIgnorehadn't been present. Now, we decorate the runner to override its runtime behavior (i.e. skip execution) but return its regularDescription.
-
annotatedBuilder
protected org.junit.internal.builders.AnnotatedBuilder annotatedBuilder()
- Overrides:
annotatedBuilderin classorg.junit.internal.builders.AllDefaultPossibilitiesBuilder
-
junit4Builder
protected org.junit.internal.builders.JUnit4Builder junit4Builder()
- Overrides:
junit4Builderin classorg.junit.internal.builders.AllDefaultPossibilitiesBuilder
-
ignoredBuilder
protected org.junit.internal.builders.IgnoredBuilder ignoredBuilder()
- Overrides:
ignoredBuilderin classorg.junit.internal.builders.AllDefaultPossibilitiesBuilder
-
-