use of org.eclipse.n4js.jsdoc.dom.Doclet in project n4js by eclipse.
the class DocletParserTest method testJSDocParsingWithoutMainDescription.
@SuppressWarnings("javadoc")
@Test
public void testJSDocParsingWithoutMainDescription() {
String in = "/** \n * @stubLineTagTitle \n */";
AbstractLineTagDefinition tag = new StubLineTagDefinition("stubLineTagTitle");
DocletParser docletParser = new DocletParser(new TagDictionary<>(Arrays.asList(tag)), new TagDictionary<AbstractInlineTagDefinition>());
Doclet doclet = docletParser.parse(in);
LineTag lineTag = doclet.getLineTags().get(0);
assertEquals("stubLineTagTitle", lineTag.getTitle().getTitle());
}
use of org.eclipse.n4js.jsdoc.dom.Doclet in project n4js by eclipse.
the class DocletParserTest method testUnkonwLineTagIsIgnored.
@SuppressWarnings("javadoc")
@Test
public void testUnkonwLineTagIsIgnored() {
String in = "/** \n * @unkonwTagTitle \n */";
AbstractLineTagDefinition tag = new StubLineTagDefinition("stubLineTagTitle");
DocletParser docletParser = new DocletParser(new TagDictionary<>(Arrays.asList(tag)), new TagDictionary<AbstractInlineTagDefinition>());
Doclet doclet = docletParser.parse(in);
assertEquals(0, doclet.getLineTags().size());
}
use of org.eclipse.n4js.jsdoc.dom.Doclet in project n4js by eclipse.
the class N4JSDReader method processClassifier.
private void processClassifier(Multimap<String, SpecInfo> specInfoByName, Type testType, TClassifier ctype) {
RepoRelativePath rrp = RepoRelativePath.compute(testType.eResource(), n4jsCore);
Doclet testTypeDoclet = n4jsDocHelper.getDoclet(ctype.getAstElement());
Collection<FullMemberReference> testeeRefsFromType = getFullMemberRefsFromType(testTypeDoclet);
Collection<FullMemberReference> testeeTypeRefsFromType = getFullTypeRefsFromType(testTypeDoclet);
MemberList<TMember> allMembers = containerTypesHelper.fromContext(testType).allMembers(ctype, false, false);
for (TMember testMember : allMembers) {
boolean isOwnedMember = testMember.getContainingType() == ctype;
if (testMember instanceof TMethod && AnnotationDefinition.TEST_METHOD.hasAnnotation(testMember)) {
EObject astElement = testMember.getAstElement();
if (!astElement.eIsProxy()) {
Doclet testMethodDoclet = n4jsDocHelper.getDoclet(astElement);
LineTag tag = findLinkToElementTag(testMethodDoclet, isOwnedMember);
if (tag != null) {
processTag(specInfoByName, rrp, testeeRefsFromType, testeeTypeRefsFromType, testMember, isOwnedMember, astElement, testMethodDoclet, tag);
}
} else {
System.err.println("cannot result AST when scanning for doclets: " + astElement);
}
}
}
}
Aggregations