From 7e100714bbd8f8bc3974c55dec48940ff331c4ec Mon Sep 17 00:00:00 2001 From: Konstantin Lutovich Date: Thu, 5 May 2016 18:15:20 +0200 Subject: [PATCH] Issue #3157: Javadoc value tag can reference import (#3158) --- .../checkstyle/checks/javadoc/JavadocTag.java | 1 + .../checks/imports/UnusedImportsCheckTest.java | 7 +++++++ .../imports/InputUnusedImportWithValueTag.java | 15 +++++++++++++++ 3 files changed, 23 insertions(+) create mode 100644 src/test/resources/com/puppycrawl/tools/checkstyle/checks/imports/InputUnusedImportWithValueTag.java diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/javadoc/JavadocTag.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/javadoc/JavadocTag.java index 2e457802c5d..ab2d1d93516 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/javadoc/JavadocTag.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/javadoc/JavadocTag.java @@ -142,6 +142,7 @@ public boolean isInheritDocTag() { public boolean canReferenceImports() { return tagInfo == JavadocTagInfo.SEE || tagInfo == JavadocTagInfo.LINK + || tagInfo == JavadocTagInfo.VALUE || tagInfo == JavadocTagInfo.LINKPLAIN || tagInfo == JavadocTagInfo.THROWS || tagInfo == JavadocTagInfo.EXCEPTION; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/imports/UnusedImportsCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/imports/UnusedImportsCheckTest.java index e598fb5e9db..e8c6c4d1aad 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/imports/UnusedImportsCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/imports/UnusedImportsCheckTest.java @@ -104,6 +104,13 @@ public void testProcessJavadoc() throws Exception { verify(checkConfig, getPath("InputUnusedImports.java"), expected); } + @Test + public void testProcessJavadocWithLinkTag() throws Exception { + final DefaultConfiguration checkConfig = createCheckConfig(UnusedImportsCheck.class); + final String[] expected = CommonUtils.EMPTY_STRING_ARRAY; + verify(checkConfig, getPath("InputUnusedImportWithValueTag.java"), expected); + } + @Test public void testAnnotations() throws Exception { final DefaultConfiguration checkConfig = createCheckConfig(UnusedImportsCheck.class); diff --git a/src/test/resources/com/puppycrawl/tools/checkstyle/checks/imports/InputUnusedImportWithValueTag.java b/src/test/resources/com/puppycrawl/tools/checkstyle/checks/imports/InputUnusedImportWithValueTag.java new file mode 100644 index 00000000000..80b42ef23e4 --- /dev/null +++ b/src/test/resources/com/puppycrawl/tools/checkstyle/checks/imports/InputUnusedImportWithValueTag.java @@ -0,0 +1,15 @@ +package com.puppycrawl.tools.checkstyle.checks.imports; + +import java.util.Calendar; + +public class InputUnusedImportWithValueTag { + + /** + * Method determines current month as for {@value Calendar#MONTH}. + * + * @return index of the current month. + */ + public int currentMonth() { + return 1; + } +}