Scoping for javadoc checks

This commit is contained in:
Oleg Sukhodolsky 2004-03-27 21:10:17 +00:00
parent 5e7932be70
commit cdf0ac0f4c
9 changed files with 574 additions and 84 deletions

View File

@ -138,6 +138,9 @@ public class JavadocMethodCheck
/** the visibility scope where Javadoc comments are checked **/
private Scope mScope = Scope.PRIVATE;
/** the visibility scope where Javadoc comments shouldn't be checked **/
private Scope mExcludeScope;
/**
* controls whether to allow documented exceptions that
* are not declared if they are a subclass of
@ -182,6 +185,15 @@ public class JavadocMethodCheck
mScope = Scope.getInstance(aFrom);
}
/**
* Set the excludeScope.
* @param aScope a <code>String</code> value
*/
public void setExcludeScope(String aScope)
{
mExcludeScope = Scope.getInstance(aScope);
}
/**
* controls whether to allow documented exceptions that
* are not declared if they are a subclass of
@ -271,32 +283,38 @@ public class JavadocMethodCheck
*/
protected final void processAST(DetailAST aAST)
{
final DetailAST mods = aAST.findFirstToken(TokenTypes.MODIFIERS);
final Scope declaredScope = ScopeUtils.getScopeFromMods(mods);
final Scope targetScope =
ScopeUtils.inInterfaceBlock(aAST)
? Scope.PUBLIC
: declaredScope;
if (shouldCheck(aAST)) {
final FileContents contents = getFileContents();
final TextBlock cmt = contents.getJavadocBefore(aAST.getLineNo());
if (targetScope.isIn(mScope)) {
final Scope surroundingScope =
ScopeUtils.getSurroundingScope(aAST);
if (surroundingScope.isIn(mScope)) {
final FileContents contents = getFileContents();
final TextBlock cmt =
contents.getJavadocBefore(aAST.getLineNo());
if (cmt == null) {
log(aAST, "javadoc.missing");
}
else {
checkComment(aAST, cmt);
}
if (cmt == null) {
log(aAST, "javadoc.missing");
}
else {
checkComment(aAST, cmt);
}
}
}
/**
* Whether we should check this node.
* @param aAST a given node.
* @return whether we should check a given node.
*/
private boolean shouldCheck(final DetailAST aAST)
{
final DetailAST mods = aAST.findFirstToken(TokenTypes.MODIFIERS);
final Scope declaredScope = ScopeUtils.getScopeFromMods(mods);
final Scope scope =
ScopeUtils.inInterfaceBlock(aAST) ? Scope.PUBLIC : declaredScope;
final Scope surroundingScope = ScopeUtils.getSurroundingScope(aAST);
return scope.isIn(mScope) && surroundingScope.isIn(mScope)
&& ((mExcludeScope == null)
|| !scope.isIn(mExcludeScope)
|| !surroundingScope.isIn(mExcludeScope));
}
/**
* Checks the Javadoc for a method.
* @param aAST the token for the method

View File

@ -69,6 +69,9 @@ public class JavadocStyleCheck
/** The scope to check. */
private Scope mScope = Scope.PRIVATE;
/** the visibility scope where Javadoc comments shouldn't be checked **/
private Scope mExcludeScope;
/** Regular expression for matching the end of a sentence. */
private RE mEndOfSentenceRE;
@ -109,32 +112,40 @@ public class JavadocStyleCheck
*/
public void visitToken(DetailAST aAST)
{
if (!ScopeUtils.inCodeBlock(aAST)) {
final DetailAST mods =
aAST.findFirstToken(TokenTypes.MODIFIERS);
final Scope declaredScope = ScopeUtils.getScopeFromMods(mods);
final Scope variableScope =
ScopeUtils.inInterfaceBlock(aAST)
? Scope.PUBLIC
: declaredScope;
if (shouldCheck(aAST)) {
final FileContents contents = getFileContents();
final TextBlock cmt =
contents.getJavadocBefore(aAST.getLineNo());
if (variableScope.isIn(mScope)) {
final Scope surroundingScope =
ScopeUtils.getSurroundingScope(aAST);
if ((surroundingScope == null)
|| surroundingScope.isIn(mScope))
{
final FileContents contents = getFileContents();
final TextBlock cmt =
contents.getJavadocBefore(aAST.getLineNo());
checkComment(cmt);
}
}
checkComment(cmt);
}
}
/**
* Whether we should check this node.
* @param aAST a given node.
* @return whether we should check a given node.
*/
private boolean shouldCheck(final DetailAST aAST)
{
if (ScopeUtils.inCodeBlock(aAST)) {
return false;
}
final DetailAST mods = aAST.findFirstToken(TokenTypes.MODIFIERS);
final Scope declaredScope = ScopeUtils.getScopeFromMods(mods);
final Scope scope =
ScopeUtils.inInterfaceBlock(aAST) ? Scope.PUBLIC : declaredScope;
final Scope surroundingScope = ScopeUtils.getSurroundingScope(aAST);
return scope.isIn(mScope)
&& ((surroundingScope == null) || surroundingScope.isIn(mScope))
&& ((mExcludeScope == null)
|| !scope.isIn(mExcludeScope)
|| (surroundingScope != null)
&& !surroundingScope.isIn(mExcludeScope));
}
/**
* Performs the various checks agains the Javadoc comment.
*
@ -445,6 +456,15 @@ public class JavadocStyleCheck
mScope = Scope.getInstance(aFrom);
}
/**
* Set the excludeScope.
* @param aScope a <code>String</code> value
*/
public void setExcludeScope(String aScope)
{
mExcludeScope = Scope.getInstance(aScope);
}
/**
* Returns a regular expression for matching the end of a sentence.
*

View File

@ -85,6 +85,8 @@ public class JavadocTypeCheck
{
/** the scope to check for */
private Scope mScope = Scope.PRIVATE;
/** the visibility scope where Javadoc comments shouldn't be checked **/
private Scope mExcludeScope;
/** compiled regexp to match author tag content **/
private RE mAuthorFormatRE;
/** compiled regexp to match version tag content **/
@ -103,6 +105,15 @@ public class JavadocTypeCheck
mScope = Scope.getInstance(aFrom);
}
/**
* Set the excludeScope.
* @param aScope a <code>String</code> value
*/
public void setExcludeScope(String aScope)
{
mExcludeScope = Scope.getInstance(aScope);
}
/**
* Set the author tag pattern.
* @param aFormat a <code>String</code> value
@ -147,31 +158,45 @@ public class JavadocTypeCheck
/** @see com.puppycrawl.tools.checkstyle.api.Check */
public void visitToken(DetailAST aAST)
{
final DetailAST mods = aAST.findFirstToken(TokenTypes.MODIFIERS);
final Scope declaredScope = ScopeUtils.getScopeFromMods(mods);
final Scope typeScope =
ScopeUtils.inInterfaceBlock(aAST) ? Scope.PUBLIC : declaredScope;
if (typeScope.isIn(mScope)) {
final Scope surroundingScope = ScopeUtils.getSurroundingScope(aAST);
if ((surroundingScope == null) || surroundingScope.isIn(mScope)) {
final FileContents contents = getFileContents();
final int lineNo = aAST.getLineNo();
final TextBlock cmt = contents.getJavadocBefore(lineNo);
if (cmt == null) {
log(lineNo, "javadoc.missing");
}
else if (ScopeUtils.isOuterMostType(aAST)) {
// don't check author/version for inner classes
Vector tags = getJavadocTags(cmt);
checkTag(lineNo, tags, "author",
mAuthorFormatRE, mAuthorFormat);
checkTag(lineNo, tags, "version",
mVersionFormatRE, mVersionFormat);
}
if (shouldCheck(aAST)) {
final FileContents contents = getFileContents();
final int lineNo = aAST.getLineNo();
final TextBlock cmt = contents.getJavadocBefore(lineNo);
if (cmt == null) {
log(lineNo, "javadoc.missing");
}
else if (ScopeUtils.isOuterMostType(aAST)) {
// don't check author/version for inner classes
Vector tags = getJavadocTags(cmt);
checkTag(lineNo, tags, "author",
mAuthorFormatRE, mAuthorFormat);
checkTag(lineNo, tags, "version",
mVersionFormatRE, mVersionFormat);
}
}
}
/**
* Whether we should check this node.
* @param aAST a given node.
* @return whether we should check a given node.
*/
private boolean shouldCheck(final DetailAST aAST)
{
final DetailAST mods = aAST.findFirstToken(TokenTypes.MODIFIERS);
final Scope declaredScope = ScopeUtils.getScopeFromMods(mods);
final Scope scope =
ScopeUtils.inInterfaceBlock(aAST) ? Scope.PUBLIC : declaredScope;
final Scope surroundingScope = ScopeUtils.getSurroundingScope(aAST);
return scope.isIn(mScope)
&& ((surroundingScope == null) || surroundingScope.isIn(mScope))
&& ((mExcludeScope == null)
|| !scope.isIn(mExcludeScope)
|| (surroundingScope != null)
&& !surroundingScope.isIn(mExcludeScope));
}
/**
* Gets all standalone tags from a given javadoc.
* @param aCmt teh Javadoc comment to process.

View File

@ -55,6 +55,9 @@ public class JavadocVariableCheck
/** the scope to check */
private Scope mScope = Scope.PRIVATE;
/** the visibility scope where Javadoc comments shouldn't be checked **/
private Scope mExcludeScope;
/**
* Sets the scope to check.
* @param aFrom string to get the scope from
@ -64,6 +67,15 @@ public class JavadocVariableCheck
mScope = Scope.getInstance(aFrom);
}
/**
* Set the excludeScope.
* @param aScope a <code>String</code> value
*/
public void setExcludeScope(String aScope)
{
mExcludeScope = Scope.getInstance(aScope);
}
/** @see com.puppycrawl.tools.checkstyle.api.Check */
public int[] getDefaultTokens()
{
@ -73,28 +85,38 @@ public class JavadocVariableCheck
/** @see com.puppycrawl.tools.checkstyle.api.Check */
public void visitToken(DetailAST aAST)
{
if (!ScopeUtils.inCodeBlock(aAST)) {
final DetailAST mods = aAST.findFirstToken(TokenTypes.MODIFIERS);
final Scope declaredScope = ScopeUtils.getScopeFromMods(mods);
final Scope variableScope =
ScopeUtils.inInterfaceBlock(aAST)
? Scope.PUBLIC
: declaredScope;
if (shouldCheck(aAST)) {
final FileContents contents = getFileContents();
final TextBlock cmt =
contents.getJavadocBefore(aAST.getLineNo());
if (variableScope.isIn(mScope)) {
final Scope surroundingScope =
ScopeUtils.getSurroundingScope(aAST);
if (surroundingScope.isIn(mScope)) {
final FileContents contents = getFileContents();
final TextBlock cmt =
contents.getJavadocBefore(aAST.getLineNo());
if (cmt == null) {
log(aAST, "javadoc.missing");
}
}
if (cmt == null) {
log(aAST, "javadoc.missing");
}
}
}
/**
* Whether we should check this node.
* @param aAST a given node.
* @return whether we should check a given node.
*/
private boolean shouldCheck(final DetailAST aAST)
{
if (ScopeUtils.inCodeBlock(aAST)) {
return false;
}
final DetailAST mods = aAST.findFirstToken(TokenTypes.MODIFIERS);
final Scope declaredScope = ScopeUtils.getScopeFromMods(mods);
final Scope scope =
ScopeUtils.inInterfaceBlock(aAST) ? Scope.PUBLIC : declaredScope;
final Scope surroundingScope = ScopeUtils.getSurroundingScope(aAST);
return scope.isIn(mScope) && surroundingScope.isIn(mScope)
&& ((mExcludeScope == null)
|| !scope.isIn(mExcludeScope)
|| !surroundingScope.isIn(mExcludeScope));
}
}

View File

@ -0,0 +1,108 @@
public class InputNoJavadic
{
public int i1;
protected int i2;
int i3;
private int i4;
public foo1() {}
protected foo2() {}
foo3() {}
private foo4() {}
protected class ProtectedInner {
public int i1;
protected int i2;
int i3;
private int i4;
public foo1() {}
protected foo2() {}
foo3() {}
private foo4() {}
}
class PackageInner {
public int i1;
protected int i2;
int i3;
private int i4;
public foo1() {}
protected foo2() {}
foo3() {}
private foo4() {}
}
private class PrivateInner {
public int i1;
protected int i2;
int i3;
private int i4;
public foo1() {}
protected foo2() {}
foo3() {}
private foo4() {}
}
}
class PackageClass {
public int i1;
protected int i2;
int i3;
private int i4;
public foo1() {}
protected foo2() {}
foo3() {}
private foo4() {}
public class PublicInner {
public int i1;
protected int i2;
int i3;
private int i4;
public foo1() {}
protected foo2() {}
foo3() {}
private foo4() {}
}
protected class ProtectedInner {
public int i1;
protected int i2;
int i3;
private int i4;
public foo1() {}
protected foo2() {}
foo3() {}
private foo4() {}
}
class PackageInner {
public int i1;
protected int i2;
int i3;
private int i4;
public foo1() {}
protected foo2() {}
foo3() {}
private foo4() {}
}
private class PrivateInner {
public int i1;
protected int i2;
int i3;
private int i4;
public foo1() {}
protected foo2() {}
foo3() {}
private foo4() {}
}
}

View File

@ -4,6 +4,7 @@ import com.puppycrawl.tools.checkstyle.BaseCheckTestCase;
import com.puppycrawl.tools.checkstyle.DefaultConfiguration;
import com.puppycrawl.tools.checkstyle.api.Scope;
import java.io.File;
public class JavadocMethodCheckTest
extends BaseCheckTestCase
@ -217,4 +218,112 @@ public class JavadocMethodCheckTest
};
verify(checkConfig, getPath("InputTags.java"), expected);
}
public void testScopes() throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocMethodCheck.class);
final String[] expected = {
"8:5: Missing a Javadoc comment.",
"9:5: Missing a Javadoc comment.",
"10:5: Missing a Javadoc comment.",
"11:5: Missing a Javadoc comment.",
"19:9: Missing a Javadoc comment.",
"20:9: Missing a Javadoc comment.",
"21:9: Missing a Javadoc comment.",
"22:9: Missing a Javadoc comment.",
"31:9: Missing a Javadoc comment.",
"32:9: Missing a Javadoc comment.",
"33:9: Missing a Javadoc comment.",
"34:9: Missing a Javadoc comment.",
"43:9: Missing a Javadoc comment.",
"44:9: Missing a Javadoc comment.",
"45:9: Missing a Javadoc comment.",
"46:9: Missing a Javadoc comment.",
"56:5: Missing a Javadoc comment.",
"57:5: Missing a Javadoc comment.",
"58:5: Missing a Javadoc comment.",
"59:5: Missing a Javadoc comment.",
"67:9: Missing a Javadoc comment.",
"68:9: Missing a Javadoc comment.",
"69:9: Missing a Javadoc comment.",
"70:9: Missing a Javadoc comment.",
"79:9: Missing a Javadoc comment.",
"80:9: Missing a Javadoc comment.",
"81:9: Missing a Javadoc comment.",
"82:9: Missing a Javadoc comment.",
"91:9: Missing a Javadoc comment.",
"92:9: Missing a Javadoc comment.",
"93:9: Missing a Javadoc comment.",
"94:9: Missing a Javadoc comment.",
"103:9: Missing a Javadoc comment.",
"104:9: Missing a Javadoc comment.",
"105:9: Missing a Javadoc comment.",
"106:9: Missing a Javadoc comment.",
};
verify(checkConfig,
getPath("javadoc" + File.separator +"InputNoJavadoc.java"),
expected);
}
public void testScopes2() throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocMethodCheck.class);
checkConfig.addAttribute("scope", Scope.PROTECTED.getName());
final String[] expected = {
"8:5: Missing a Javadoc comment.",
"9:5: Missing a Javadoc comment.",
"19:9: Missing a Javadoc comment.",
"20:9: Missing a Javadoc comment.",
};
verify(checkConfig,
getPath("javadoc" + File.separator +"InputNoJavadoc.java"),
expected);
}
public void testExcludeScope() throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocMethodCheck.class);
checkConfig.addAttribute("scope", Scope.PRIVATE.getName());
checkConfig.addAttribute("excludeScope", Scope.PROTECTED.getName());
final String[] expected = {
"10:5: Missing a Javadoc comment.",
"11:5: Missing a Javadoc comment.",
"21:9: Missing a Javadoc comment.",
"22:9: Missing a Javadoc comment.",
"31:9: Missing a Javadoc comment.",
"32:9: Missing a Javadoc comment.",
"33:9: Missing a Javadoc comment.",
"34:9: Missing a Javadoc comment.",
"43:9: Missing a Javadoc comment.",
"44:9: Missing a Javadoc comment.",
"45:9: Missing a Javadoc comment.",
"46:9: Missing a Javadoc comment.",
"56:5: Missing a Javadoc comment.",
"57:5: Missing a Javadoc comment.",
"58:5: Missing a Javadoc comment.",
"59:5: Missing a Javadoc comment.",
"67:9: Missing a Javadoc comment.",
"68:9: Missing a Javadoc comment.",
"69:9: Missing a Javadoc comment.",
"70:9: Missing a Javadoc comment.",
"79:9: Missing a Javadoc comment.",
"80:9: Missing a Javadoc comment.",
"81:9: Missing a Javadoc comment.",
"82:9: Missing a Javadoc comment.",
"91:9: Missing a Javadoc comment.",
"92:9: Missing a Javadoc comment.",
"93:9: Missing a Javadoc comment.",
"94:9: Missing a Javadoc comment.",
"103:9: Missing a Javadoc comment.",
"104:9: Missing a Javadoc comment.",
"105:9: Missing a Javadoc comment.",
"106:9: Missing a Javadoc comment.",
};
verify(checkConfig,
getPath("javadoc" + File.separator +"InputNoJavadoc.java"),
expected);
}
}

View File

@ -160,4 +160,27 @@ public class JavadocStyleCheckTest
verify(checkConfig, getPath("InputJavadocStyleCheck.java"), expected);
}
public void testExcludeScope()
throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocStyleCheck.class);
checkConfig.addAttribute("scope", "private");
checkConfig.addAttribute("excludeScope", "protected");
final String[] expected =
{
"20: First sentence should end with a period.",
"53: First sentence should end with a period.",
"63:11: Unclosed HTML tag found: <b>This guy is missing end of bold tag",
"66:7: Extra HTML tag found: </td>Extra tag shouldn't be here",
"68:19: Unclosed HTML tag found: <code>dummy.",
"81: First sentence should end with a period.",
"82:31: Unclosed HTML tag found: <b>should fail",
"109:39: Extra HTML tag found: </img>",
"186:8: Unclosed HTML tag found: <blockquote>",
"193: First sentence should end with a period.",
};
verify(checkConfig, getPath("InputJavadocStyleCheck.java"), expected);
}
}

View File

@ -4,6 +4,8 @@ import com.puppycrawl.tools.checkstyle.BaseCheckTestCase;
import com.puppycrawl.tools.checkstyle.DefaultConfiguration;
import com.puppycrawl.tools.checkstyle.api.Scope;
import java.io.File;
/**
* @author Oliver.Burn
*
@ -196,4 +198,58 @@ public class JavadocTypeCheckTest extends BaseCheckTestCase
};
verify(checkConfig, getPath("InputJavadoc.java"), expected);
}
public void testScopes() throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocTypeCheck.class);
final String[] expected = {
"1: Missing a Javadoc comment.",
"13: Missing a Javadoc comment.",
"25: Missing a Javadoc comment.",
"37: Missing a Javadoc comment.",
"50: Missing a Javadoc comment.",
"61: Missing a Javadoc comment.",
"73: Missing a Javadoc comment.",
"85: Missing a Javadoc comment.",
"97: Missing a Javadoc comment.",
};
verify(checkConfig,
getPath("javadoc" + File.separator +"InputNoJavadoc.java"),
expected);
}
public void testScopes2() throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocTypeCheck.class);
checkConfig.addAttribute("scope", Scope.PROTECTED.getName());
final String[] expected = {
"1: Missing a Javadoc comment.",
"13: Missing a Javadoc comment.",
};
verify(checkConfig,
getPath("javadoc" + File.separator +"InputNoJavadoc.java"),
expected);
}
public void testExcludeScope() throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocTypeCheck.class);
checkConfig.addAttribute("scope", Scope.PRIVATE.getName());
checkConfig.addAttribute("excludeScope", Scope.PROTECTED.getName());
final String[] expected = {
"25: Missing a Javadoc comment.",
"37: Missing a Javadoc comment.",
"50: Missing a Javadoc comment.",
"61: Missing a Javadoc comment.",
"73: Missing a Javadoc comment.",
"85: Missing a Javadoc comment.",
"97: Missing a Javadoc comment.",
};
verify(checkConfig,
getPath("javadoc" + File.separator +"InputNoJavadoc.java"),
expected);
}
}

View File

@ -4,6 +4,7 @@ import com.puppycrawl.tools.checkstyle.BaseCheckTestCase;
import com.puppycrawl.tools.checkstyle.DefaultConfiguration;
import com.puppycrawl.tools.checkstyle.api.Scope;
import java.io.File;
public class JavadocVariableCheckTest
extends BaseCheckTestCase
@ -70,4 +71,112 @@ public class JavadocVariableCheckTest
};
verify(checkConfig, getPath("InputPublicOnly.java"), expected);
}
public void testScopes() throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocVariableCheck.class);
final String[] expected = {
"3:5: Missing a Javadoc comment.",
"4:5: Missing a Javadoc comment.",
"5:5: Missing a Javadoc comment.",
"6:5: Missing a Javadoc comment.",
"14:9: Missing a Javadoc comment.",
"15:9: Missing a Javadoc comment.",
"16:9: Missing a Javadoc comment.",
"17:9: Missing a Javadoc comment.",
"26:9: Missing a Javadoc comment.",
"27:9: Missing a Javadoc comment.",
"28:9: Missing a Javadoc comment.",
"29:9: Missing a Javadoc comment.",
"38:9: Missing a Javadoc comment.",
"39:9: Missing a Javadoc comment.",
"40:9: Missing a Javadoc comment.",
"41:9: Missing a Javadoc comment.",
"51:5: Missing a Javadoc comment.",
"52:5: Missing a Javadoc comment.",
"53:5: Missing a Javadoc comment.",
"54:5: Missing a Javadoc comment.",
"62:9: Missing a Javadoc comment.",
"63:9: Missing a Javadoc comment.",
"64:9: Missing a Javadoc comment.",
"65:9: Missing a Javadoc comment.",
"74:9: Missing a Javadoc comment.",
"75:9: Missing a Javadoc comment.",
"76:9: Missing a Javadoc comment.",
"77:9: Missing a Javadoc comment.",
"86:9: Missing a Javadoc comment.",
"87:9: Missing a Javadoc comment.",
"88:9: Missing a Javadoc comment.",
"89:9: Missing a Javadoc comment.",
"98:9: Missing a Javadoc comment.",
"99:9: Missing a Javadoc comment.",
"100:9: Missing a Javadoc comment.",
"101:9: Missing a Javadoc comment.",
};
verify(checkConfig,
getPath("javadoc" + File.separator +"InputNoJavadoc.java"),
expected);
}
public void testScopes2() throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocVariableCheck.class);
checkConfig.addAttribute("scope", Scope.PROTECTED.getName());
final String[] expected = {
"3:5: Missing a Javadoc comment.",
"4:5: Missing a Javadoc comment.",
"14:9: Missing a Javadoc comment.",
"15:9: Missing a Javadoc comment.",
};
verify(checkConfig,
getPath("javadoc" + File.separator +"InputNoJavadoc.java"),
expected);
}
public void testExcludeScope() throws Exception
{
final DefaultConfiguration checkConfig =
createCheckConfig(JavadocVariableCheck.class);
checkConfig.addAttribute("scope", Scope.PRIVATE.getName());
checkConfig.addAttribute("excludeScope", Scope.PROTECTED.getName());
final String[] expected = {
"5:5: Missing a Javadoc comment.",
"6:5: Missing a Javadoc comment.",
"16:9: Missing a Javadoc comment.",
"17:9: Missing a Javadoc comment.",
"26:9: Missing a Javadoc comment.",
"27:9: Missing a Javadoc comment.",
"28:9: Missing a Javadoc comment.",
"29:9: Missing a Javadoc comment.",
"38:9: Missing a Javadoc comment.",
"39:9: Missing a Javadoc comment.",
"40:9: Missing a Javadoc comment.",
"41:9: Missing a Javadoc comment.",
"51:5: Missing a Javadoc comment.",
"52:5: Missing a Javadoc comment.",
"53:5: Missing a Javadoc comment.",
"54:5: Missing a Javadoc comment.",
"62:9: Missing a Javadoc comment.",
"63:9: Missing a Javadoc comment.",
"64:9: Missing a Javadoc comment.",
"65:9: Missing a Javadoc comment.",
"74:9: Missing a Javadoc comment.",
"75:9: Missing a Javadoc comment.",
"76:9: Missing a Javadoc comment.",
"77:9: Missing a Javadoc comment.",
"86:9: Missing a Javadoc comment.",
"87:9: Missing a Javadoc comment.",
"88:9: Missing a Javadoc comment.",
"89:9: Missing a Javadoc comment.",
"98:9: Missing a Javadoc comment.",
"99:9: Missing a Javadoc comment.",
"100:9: Missing a Javadoc comment.",
"101:9: Missing a Javadoc comment.",
};
verify(checkConfig,
getPath("javadoc" + File.separator +"InputNoJavadoc.java"),
expected);
}
}