Package org.junit.internal.runners.rules
Class RuleMemberValidator
- java.lang.Object
-
- org.junit.internal.runners.rules.RuleMemberValidator
-
public class RuleMemberValidator extends java.lang.Object
A RuleMemberValidator validates the rule fields/methods of aTestClass
. All reasons for rejecting theTestClass
are written to a list of errors.There are four slightly different validators. The
CLASS_RULE_VALIDATOR
validates fields with aClassRule
annotation and theRULE_VALIDATOR
validates fields with aRule
annotation.The
CLASS_RULE_METHOD_VALIDATOR
validates methods with aClassRule
annotation and theRULE_METHOD_VALIDATOR
validates methods with aRule
annotation.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
RuleMemberValidator.Builder
private static class
RuleMemberValidator.DeclaringClassMustBePublic
Requires the member's declaring class to be publicprivate static class
RuleMemberValidator.FieldMustBeARule
Requires the member is a field implementingMethodRule
orTestRule
private static class
RuleMemberValidator.FieldMustBeATestRule
Requires the member is a field implementingTestRule
private static class
RuleMemberValidator.MemberMustBeNonStaticOrAlsoClassRule
Requires the validated member to be non-staticprivate static class
RuleMemberValidator.MemberMustBePublic
Requires the member to be publicprivate static class
RuleMemberValidator.MemberMustBeStatic
Requires the member to be staticprivate static class
RuleMemberValidator.MethodMustBeARule
Require the member to return an implementation ofMethodRule
orTestRule
private static class
RuleMemberValidator.MethodMustBeATestRule
Require the member to return an implementation ofTestRule
(package private) static interface
RuleMemberValidator.RuleValidator
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Class<? extends java.lang.annotation.Annotation>
annotation
static RuleMemberValidator
CLASS_RULE_METHOD_VALIDATOR
Validates methods with aClassRule
annotation.static RuleMemberValidator
CLASS_RULE_VALIDATOR
Validates fields with aClassRule
annotation.private boolean
methods
static RuleMemberValidator
RULE_METHOD_VALIDATOR
Validates methods with aRule
annotation.static RuleMemberValidator
RULE_VALIDATOR
Validates fields with aRule
annotation.private java.util.List<RuleMemberValidator.RuleValidator>
validatorStrategies
-
Constructor Summary
Constructors Constructor Description RuleMemberValidator(RuleMemberValidator.Builder builder)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static RuleMemberValidator.Builder
classRuleValidatorBuilder()
private static boolean
isMethodRule(FrameworkMember<?> member)
private static boolean
isRuleType(FrameworkMember<?> member)
private static boolean
isTestRule(FrameworkMember<?> member)
private static RuleMemberValidator.Builder
testRuleValidatorBuilder()
void
validate(TestClass target, java.util.List<java.lang.Throwable> errors)
Validate theTestClass
and adds reasons for rejecting the class to a list of errors.private void
validateMember(FrameworkMember<?> member, java.util.List<java.lang.Throwable> errors)
-
-
-
Field Detail
-
CLASS_RULE_VALIDATOR
public static final RuleMemberValidator CLASS_RULE_VALIDATOR
Validates fields with aClassRule
annotation.
-
RULE_VALIDATOR
public static final RuleMemberValidator RULE_VALIDATOR
Validates fields with aRule
annotation.
-
CLASS_RULE_METHOD_VALIDATOR
public static final RuleMemberValidator CLASS_RULE_METHOD_VALIDATOR
Validates methods with aClassRule
annotation.
-
RULE_METHOD_VALIDATOR
public static final RuleMemberValidator RULE_METHOD_VALIDATOR
Validates methods with aRule
annotation.
-
annotation
private final java.lang.Class<? extends java.lang.annotation.Annotation> annotation
-
methods
private final boolean methods
-
validatorStrategies
private final java.util.List<RuleMemberValidator.RuleValidator> validatorStrategies
-
-
Constructor Detail
-
RuleMemberValidator
RuleMemberValidator(RuleMemberValidator.Builder builder)
-
-
Method Detail
-
validate
public void validate(TestClass target, java.util.List<java.lang.Throwable> errors)
Validate theTestClass
and adds reasons for rejecting the class to a list of errors.- Parameters:
target
- theTestClass
to validate.errors
- the list of errors.
-
validateMember
private void validateMember(FrameworkMember<?> member, java.util.List<java.lang.Throwable> errors)
-
classRuleValidatorBuilder
private static RuleMemberValidator.Builder classRuleValidatorBuilder()
-
testRuleValidatorBuilder
private static RuleMemberValidator.Builder testRuleValidatorBuilder()
-
isRuleType
private static boolean isRuleType(FrameworkMember<?> member)
-
isTestRule
private static boolean isTestRule(FrameworkMember<?> member)
-
isMethodRule
private static boolean isMethodRule(FrameworkMember<?> member)
-
-