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.AllDefaultPossibilitiesBuilder
Customization of
AllDefaultPossibilitiesBuilder
from JUnit 4 to
ignore certain classes that would otherwise be reported as errors or cause
infinite recursion.- Since:
- 4.12
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
Customization ofAnnotatedBuilder
that ignores classes annotated with@RunWith(JUnitPlatform.class)
to avoid infinite recursion.private static class
Customization ofJUnit4Builder
that ignores classes that do not contain any test methods in order not to report errors for them.private static class
Customization ofIgnoredBuilder
that always returnsnull
. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final org.junit.internal.builders.AnnotatedBuilder
private final org.junit.internal.builders.IgnoredBuilder
private final org.junit.internal.builders.JUnit4Builder
private static final org.junit.platform.commons.logging.Logger
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected org.junit.internal.builders.AnnotatedBuilder
private IgnoringRunnerDecorator
decorateIgnoredTestClass
(org.junit.runner.Runner runner) Instead of checking for theIgnore
annotation and returning anIgnoredClassRunner
fromIgnoredBuilder
, we've let the super class determine the regular runner that would have been used ifIgnore
hadn't been present.protected org.junit.internal.builders.IgnoredBuilder
(package private) boolean
isIgnored
(org.junit.runner.Runner runner) protected org.junit.internal.builders.JUnit4Builder
org.junit.runner.Runner
runnerForClass
(Class<?> testClass) Methods inherited from class org.junit.internal.builders.AllDefaultPossibilitiesBuilder
junit3Builder, suiteMethodBuilder
Methods inherited from class org.junit.runners.model.RunnerBuilder
runners, runners, safeRunnerForClass
-
Field Details
-
logger
private static final org.junit.platform.commons.logging.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
-
-
Constructor Details
-
DefensiveAllDefaultPossibilitiesBuilder
DefensiveAllDefaultPossibilitiesBuilder()
-
-
Method Details
-
runnerForClass
- Overrides:
runnerForClass
in classorg.junit.internal.builders.AllDefaultPossibilitiesBuilder
- Throws:
Throwable
-
isIgnored
boolean isIgnored(org.junit.runner.Runner runner) -
decorateIgnoredTestClass
Instead of checking for theIgnore
annotation and returning anIgnoredClassRunner
fromIgnoredBuilder
, we've let the super class determine the regular runner that would have been used ifIgnore
hadn'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:
annotatedBuilder
in classorg.junit.internal.builders.AllDefaultPossibilitiesBuilder
-
junit4Builder
protected org.junit.internal.builders.JUnit4Builder junit4Builder()- Overrides:
junit4Builder
in classorg.junit.internal.builders.AllDefaultPossibilitiesBuilder
-
ignoredBuilder
protected org.junit.internal.builders.IgnoredBuilder ignoredBuilder()- Overrides:
ignoredBuilder
in classorg.junit.internal.builders.AllDefaultPossibilitiesBuilder
-