public static List<SqlExpectation> buildSqlExpectationList(Method method) { SqlExpectations sqlExpectations = method.getAnnotation(SqlExpectations.class); SqlExpectation sqlExpectation = method.getAnnotation(SqlExpectation.class); NoSql noSql = method.getAnnotation(NoSql.class); if (null == sqlExpectations) sqlExpectations = Expectations.SqlExpectationsAdapter.adapter( method.getAnnotation(Expectations.class) ); if (null == sqlExpectation) sqlExpectation = Expectation.SqlExpectationAdapter.adapter( method.getAnnotation(Expectation.class) ); if (null == noSql && null != method.getAnnotation(NoQueriesAllowed.class)) noSql = method.getAnnotation(NoQueriesAllowed.class).annotationType().getAnnotation(NoSql.class); return buildSqlExpectationList(method.getDeclaringClass(), sqlExpectations, sqlExpectation, noSql); }
@NoQueriesAllowed public abstract class BaseNoQueriesAllowedTest { }
public static List<SqlExpectation> buildSqlExpectationList(Class<?> declaringClass, SqlExpectations sqlExpectations, SqlExpectation sqlExpectation, NoSql noSql) { // If no annotations present, check the test class and its superclasses for (Class<?> testClass = declaringClass; null == sqlExpectations && null == sqlExpectation && null == noSql && !Object.class.equals(testClass); testClass = testClass.getSuperclass()) { sqlExpectations = testClass.getAnnotation(SqlExpectations.class); sqlExpectation = testClass.getAnnotation(SqlExpectation.class); noSql = testClass.getAnnotation(NoSql.class); if (null == sqlExpectations) sqlExpectations = Expectations.SqlExpectationsAdapter.adapter( testClass.getAnnotation(Expectations.class) ); if (null == sqlExpectation) sqlExpectation = Expectation.SqlExpectationAdapter.adapter( testClass.getAnnotation(Expectation.class) ); if (null == noSql && null != testClass.getAnnotation(NoQueriesAllowed.class)) noSql = testClass.getAnnotation(NoQueriesAllowed.class).annotationType().getAnnotation(NoSql.class); } return AnnotationProcessor.buildSqlExpectationList(sqlExpectations, sqlExpectation, noSql); }
private static List<SqlExpectation> buildSqlExpectationList(Description description) { SqlExpectations sqlExpectations = description.getAnnotation(SqlExpectations.class); SqlExpectation sqlExpectation = description.getAnnotation(SqlExpectation.class); NoSql noSql = description.getAnnotation(NoSql.class); if (null == sqlExpectations) sqlExpectations = Expectations.SqlExpectationsAdapter.adapter( description.getAnnotation(Expectations.class) ); if (null == sqlExpectation) sqlExpectation = Expectation.SqlExpectationAdapter.adapter( description.getAnnotation(Expectation.class) ); if (null == noSql && null != description.getAnnotation(NoQueriesAllowed.class)) noSql = description.getAnnotation(NoQueriesAllowed.class).annotationType().getAnnotation(NoSql.class); return AnnotationProcessor.buildSqlExpectationList(description.getTestClass(), sqlExpectations, sqlExpectation, noSql); }