void checkMethod(MethodInfo meth, String name, int numParams, String returnType, MethodKind kind, Doc comment, MethodCheck... checks) {
EnumSet<MethodCheck> checkSet = EnumSet.noneOf(MethodCheck.class);
Collections.addAll(checkSet, checks);
assertEquals(name, meth.getName());
if (comment != null) {
assertNotNull(meth.getComment());
assertEquals(comment.getFirstSentence(), meth.getDoc().getFirstSentence());
assertEquals(comment.getBody(), meth.getDoc().getBody());
assertEquals(comment.getBlockTags(), meth.getDoc().getBlockTags());
} else {
assertNull(meth.getComment());
}
assertEquals(kind, meth.getKind());
assertEquals(returnType, meth.getReturnType().toString());
assertEquals(checkSet.contains(MethodCheck.CACHE_RETURN), meth.isCacheReturn());
assertEquals(checkSet.contains(MethodCheck.FLUENT), meth.isFluent());
assertEquals(checkSet.contains(MethodCheck.STATIC), meth.isStaticMethod());
assertEquals(numParams, meth.getParams().size());
}