code: protected TestClassValidator getValidator() {
          return BooleanValidator.AND(
                  ConstructorValidator.VALID_CONSTRUCTOR,
                  BooleanValidator.OR(
                          ChildrenCountValidator.CONTEXT_HIERARCHIES,
                          ChildrenCountValidator.TEST_METHODS
                  ),
                  FixtureValidator.BEFORE_CLASS_METHODS,
                  FixtureValidator.AFTER_CLASS_METHODS,
                  FixtureValidator.BEFORE_METHODS,
                  FixtureValidator.AFTER_METHODS,
                  FixtureValidator.TEST_METHODS,
                  RuleValidator.CLASS_RULE_VALIDATOR,
                  RuleValidator.CLASS_RULE_METHOD_VALIDATOR,
                  RuleValidator.RULE_VALIDATOR,
                  RuleValidator.RULE_METHOD_VALIDATOR
          );
      }
docs: Returns a {@link TestClassValidator} that validates the {@link TestClass} instance after the
  {@link HierarchicalContextRunner} has been created for the corresponding {@link Class}. To use multiple
  {@link TestClassValidator}s, please use the {@link BooleanValidator} AND and OR to group your validators.
  
  Note: Clients may override this method to add or remove validators.
  
  @return a {@link TestClassValidator}