From 44499c60ec640fff8e962da8233e926e0feac754 Mon Sep 17 00:00:00 2001 From: Olga Klisho Date: Wed, 6 Apr 2022 15:33:39 +0300 Subject: [PATCH] (IDEA-291511) moving the package at the top of the rendered doc + fixing tests accordingly GitOrigin-RevId: 3904f7bb39ac112f7cb956c596c94016276b18dc --- .../javadoc/JavaDocInfoGenerator.java | 20 +++++++++++------ .../codeInsight/javadocIG/annotations.html | 4 ++-- .../javadocIG/annotationsInParams.html | 4 ++-- .../codeInsight/javadocIG/apiNotes.html | 4 ++-- .../testData/codeInsight/javadocIG/code.html | 4 ++-- .../javadocIG/commaInsideArgsList.html | 2 +- .../javadocIG/constantFieldInitializer.html | 2 +- .../documentationForGetterByField.html | 4 ++-- ...JdkClassWhenExternalDocIsNotAvailable.html | 4 ++-- ...ssWithReferencesToClassesFromJavaLang.html | 4 ++-- ...ntationForUncheckedExceptionsInSupers.html | 4 ++-- .../javadocIG/enumConstantOrdinal.html | 4 ++-- .../codeInsight/javadocIG/enumValueOf.html | 4 ++-- .../javadocIG/escapingInLiteral.html | 4 ++-- .../javadocIG/escapingStringValue.html | 2 +- .../javadocIG/fieldInitializedWithArray.html | 2 +- .../javadocIG/fieldInitializedWithLambda.html | 2 +- .../fieldInitializedWithSizedArray.html | 2 +- .../codeInsight/javadocIG/fieldValue.html | 2 +- .../javadocIG/htmlLinkProject/htmlLink.html | 2 +- .../htmlLinkProject/pack/htmlLinkDeep.html | 2 +- .../htmlLinkToPackageInfo/pack/A.html | 4 ++-- .../codeInsight/javadocIG/ideadev2326.html | 4 ++-- .../javadocIG/inheritedDocInThrows.html | 4 ++-- .../javadocIG/inheritedDocInThrows1.html | 4 ++-- .../javadocIG/initializerWithLiteral.html | 2 +- .../javadocIG/initializerWithNew.html | 4 ++-- .../javadocIG/initializerWithReference.html | 2 +- .../codeInsight/javadocIG/literal.html | 4 ++-- .../matchingParameterNameFromParent.html | 2 +- .../matchingTypeParameterNameFromParent.html | 2 +- .../methodExpressionWithLiteral.html | 2 +- .../javadocIG/methodFormatting.html | 4 ++-- .../javadocIG/methodTypeParameter.html | 2 +- .../codeInsight/javadocIG/pInsidePre.html | 4 ++-- .../codeInsight/javadocIG/simpleField.html | 2 +- .../javadocIG/superJavadocErasureResolve.html | 2 +- .../javadocIG/superJavadocExactResolve.html | 2 +- .../javadocIG/syntheticEnumValues.html | 4 ++-- .../codeInsight/javadocIG/typeAnnotation.html | 2 +- .../javadocIG/typeAnnotationArray.html | 2 +- .../codeInsight/javadocIG/unknownTag.html | 4 ++-- .../codeInsight/javadocIG/valueInMethod.html | 2 +- .../javadocIG/valueInMethodNoHash.html | 2 +- .../javaDoc/JavaDocDeclaration.java | 15 +++++++++++++ .../codeInsight/JavaDocumentationTest.groovy | 8 +++---- .../javadoc/LightJavadocGeneratorTest.kt | 4 ++-- .../JavadocDeclarationInspectionTest.java | 7 ++++++ ...tensionPointDocumentationProviderTest.java | 12 +++++----- .../groovy/GroovyDocumentationTest.groovy | 22 +++++++++---------- .../JavaClassConstructorUsedInKotlin.kt | 4 ++-- .../editor/quickDoc/JavaMethodUsedInKotlin.kt | 4 ++-- .../quickDoc/JavaMethodUsedInKotlinInParen.kt | 4 ++-- .../KotlinPackageClassUsedFromJava.java | 2 +- 54 files changed, 129 insertions(+), 101 deletions(-) create mode 100644 java/java-tests/testData/inspection/javaDoc/JavaDocDeclaration.java create mode 100644 java/java-tests/testSrc/com/intellij/java/codeInspection/JavadocDeclarationInspectionTest.java diff --git a/java/java-impl/src/com/intellij/codeInsight/javadoc/JavaDocInfoGenerator.java b/java/java-impl/src/com/intellij/codeInsight/javadoc/JavaDocInfoGenerator.java index 0023b9667ea1..a2760eb798ee 100644 --- a/java/java-impl/src/com/intellij/codeInsight/javadoc/JavaDocInfoGenerator.java +++ b/java/java-impl/src/com/intellij/codeInsight/javadoc/JavaDocInfoGenerator.java @@ -560,15 +560,21 @@ public class JavaDocInfoGenerator { public @Nls @Nullable String generateDocInfo(List<@NlsSafe String> docURLs) { @Nls StringBuilder buffer = new StringBuilder(); - if (!generateDocInfoCore(buffer, true)) { + if (!generateDocInfoCore(buffer, false)) { return null; } HtmlChunk containerInfo = generateContainerInfo(myElement); + StringBuilder builder = new StringBuilder(); + generatePrologue(builder); + if (containerInfo != null) { - containerInfo.appendTo(buffer); + containerInfo.appendTo(builder); } + builder.append(buffer); + buffer = builder; + if (docURLs != null) { if (buffer.length() > 0 && elementHasSourceCode()) { LOG.debug("Documentation for " + myElement + " was generated from source code, it wasn't found at following URLs: ", docURLs); @@ -1736,8 +1742,8 @@ public class JavaDocInfoGenerator { attributes = manager.getMethodCallAttributes(); } else if (resolve instanceof PsiField) { - attributes = externalTarget - ? manager.getFieldDeclarationAttributes((PsiField)resolve) + attributes = externalTarget + ? manager.getFieldDeclarationAttributes((PsiField)resolve) : manager.getLocalVariableAttributes(); } label = attributes != null ? getStyledSpan(true, attributes, text) : text; @@ -1781,8 +1787,8 @@ public class JavaDocInfoGenerator { else if (tokenType == JavaTokenType.DOT) { attributes = manager.getDotAttributes(); } - else if (tokenType == JavaTokenType.NULL_KEYWORD || - tokenType == JavaTokenType.TRUE_KEYWORD || + else if (tokenType == JavaTokenType.NULL_KEYWORD || + tokenType == JavaTokenType.TRUE_KEYWORD || tokenType == JavaTokenType.FALSE_KEYWORD) { attributes = manager.getKeywordAttributes(); } @@ -3022,4 +3028,4 @@ public class JavaDocInfoGenerator { private enum SignaturePlace { Javadoc, ToolTip } -} \ No newline at end of file +} diff --git a/java/java-tests/testData/codeInsight/javadocIG/annotations.html b/java/java-tests/testData/codeInsight/javadocIG/annotations.html index 6150de916b6f..695f835258fd 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/annotations.html +++ b/java/java-tests/testData/codeInsight/javadocIG/annotations.html @@ -1,3 +1,3 @@ -
@Nullable 
+
@Nullable 
 @Deprecated 
-public String field = null
\ No newline at end of file +public String field = null
diff --git a/java/java-tests/testData/codeInsight/javadocIG/annotationsInParams.html b/java/java-tests/testData/codeInsight/javadocIG/annotationsInParams.html index c332499ed516..c5b58eb4d05c 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/annotationsInParams.html +++ b/java/java-tests/testData/codeInsight/javadocIG/annotationsInParams.html @@ -1,2 +1,2 @@ -
public void foo(
@Deprecated String s, - @Deprecated String p
)

 Test
\ No newline at end of file +
 Test
public void foo(
@Deprecated String s, + @Deprecated String p
)

diff --git a/java/java-tests/testData/codeInsight/javadocIG/apiNotes.html b/java/java-tests/testData/codeInsight/javadocIG/apiNotes.html index 70a89e61682e..21bbb4fc88a8 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/apiNotes.html +++ b/java/java-tests/testData/codeInsight/javadocIG/apiNotes.html @@ -1,8 +1,8 @@ -
public void foo()

API Note:

+

public void foo()

API Note:

my api note

Implementation
Requirements:

my impl spec

Implementation
Note:

- my impl note

\ No newline at end of file + my impl note
\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/javadocIG/code.html b/java/java-tests/testData/codeInsight/javadocIG/code.html index d88c5a5e2230..32922d8b54db 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/code.html +++ b/java/java-tests/testData/codeInsight/javadocIG/code.html @@ -1,5 +1,5 @@ -
int foo
+
 Foo
int foo
   class Clazzz {
def f[U](u: U) {}

val a = 1
}
-

 Foo
\ No newline at end of file +

diff --git a/java/java-tests/testData/codeInsight/javadocIG/commaInsideArgsList.html b/java/java-tests/testData/codeInsight/javadocIG/commaInsideArgsList.html index bd1239f2a74e..fe3aa0568a3f 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/commaInsideArgsList.html +++ b/java/java-tests/testData/codeInsight/javadocIG/commaInsideArgsList.html @@ -1 +1 @@ -
public String field = foo("", "")
 Test
\ No newline at end of file +
 Test
public String field = foo("", "")
diff --git a/java/java-tests/testData/codeInsight/javadocIG/constantFieldInitializer.html b/java/java-tests/testData/codeInsight/javadocIG/constantFieldInitializer.html index 36bafc26bab8..103865fe20cd 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/constantFieldInitializer.html +++ b/java/java-tests/testData/codeInsight/javadocIG/constantFieldInitializer.html @@ -1 +1 @@ -
public static final int field = 1 + 1 = 2
 Test
\ No newline at end of file +
 Test
public static final int field = 1 + 1 = 2
diff --git a/java/java-tests/testData/codeInsight/javadocIG/documentationForGetterByField.html b/java/java-tests/testData/codeInsight/javadocIG/documentationForGetterByField.html index bbc3d77db47c..00138ae6edfe 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/documentationForGetterByField.html +++ b/java/java-tests/testData/codeInsight/javadocIG/documentationForGetterByField.html @@ -1,3 +1,3 @@ -
public String getMyFoo()

From field:

myFoo
+

public String getMyFoo()

From field:

myFoo
foo bar baz -

\ No newline at end of file +
diff --git a/java/java-tests/testData/codeInsight/javadocIG/documentationForJdkClassWhenExternalDocIsNotAvailable.html b/java/java-tests/testData/codeInsight/javadocIG/documentationForJdkClassWhenExternalDocIsNotAvailable.html index 60ff91cdf0ae..0e332468514d 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/documentationForJdkClassWhenExternalDocIsNotAvailable.html +++ b/java/java-tests/testData/codeInsight/javadocIG/documentationForJdkClassWhenExternalDocIsNotAvailable.html @@ -1,4 +1,4 @@ -
public final class String
+
public final class String
 implements java.io.Serializable, Comparable<String>, CharSequence
The String class represents character strings. All string literals in Java programs, such as "abc", are @@ -57,4 +57,4 @@ Unicode code points (i.e., characters), in addition to those for dealing with Unicode code units (i.e., char values). -

Since:

JDK1.0

See Also:

Object.toString(),
StringBuffer,
StringBuilder,
java.nio.charset.Charset

Author:

Lee Boynton, Arthur van Hoff, Martin Buchholz, Ulf Zibis

\ No newline at end of file +

Since:

JDK1.0

See Also:

Object.toString(),
StringBuffer,
StringBuilder,
java.nio.charset.Charset

Author:

Lee Boynton, Arthur van Hoff, Martin Buchholz, Ulf Zibis

\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/javadocIG/documentationForJdkClassWithReferencesToClassesFromJavaLang.html b/java/java-tests/testData/codeInsight/javadocIG/documentationForJdkClassWithReferencesToClassesFromJavaLang.html index 8e02c5a81e31..4d8bff7d2bfd 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/documentationForJdkClassWithReferencesToClassesFromJavaLang.html +++ b/java/java-tests/testData/codeInsight/javadocIG/documentationForJdkClassWithReferencesToClassesFromJavaLang.html @@ -1,8 +1,8 @@ -
@Contract(pure = true) 
+
@Contract(pure = true) 
 public abstract boolean contains(
Object o
)
Returns true if this list contains the specified element. More formally, returns true if and only if this list contains at least one element e such that (o==null ? e==null : o.equals(e)). -

Overrides:

contains in interface Collection

Params:

o – element whose presence in this list is to be tested

Returns:

true if this list contains the specified element

Throws:

ClassCastException – if the type of the specified element is incompatible with this list (optional)

NullPointerException – if the specified element is null and this list does not permit null elements (optional)

 < java 1.7 >
\ No newline at end of file +

Overrides:

contains in interface Collection

Params:

o – element whose presence in this list is to be tested

Returns:

true if this list contains the specified element

Throws:

ClassCastException – if the type of the specified element is incompatible with this list (optional)

NullPointerException – if the specified element is null and this list does not permit null elements (optional)

 < java 1.7 >
\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/javadocIG/documentationForUncheckedExceptionsInSupers.html b/java/java-tests/testData/codeInsight/javadocIG/documentationForUncheckedExceptionsInSupers.html index dcfe64e07d6e..5613530a37fa 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/documentationForUncheckedExceptionsInSupers.html +++ b/java/java-tests/testData/codeInsight/javadocIG/documentationForUncheckedExceptionsInSupers.html @@ -1,4 +1,4 @@ -
@Contract(pure = true)i 
+
 My
@Contract(pure = true)i 
 boolean contains(
Object o
) throws IOException

From interface:

java.util.Collection
Returns true if this collection contains the specified element. @@ -6,4 +6,4 @@ contains at least one element e such that (o==null ? e==null : o.equals(e)). -

Overrides:

contains in interface Collection
contains in interface I

Params:

o – element whose presence in this collection is to be tested

Returns:

true if this collection contains the specified element

Throws:

NullPointerException – before if the specified element is null and this collection does not permit null elements (optional) after

IOException

 My
\ No newline at end of file +

Overrides:

contains in interface Collection
contains in interface I

Params:o – element whose presence in this collection is to be tested

Returns:

true if this collection contains the specified element

Throws:

NullPointerException – before if the specified element is null and this collection does not permit null elements (optional) after

IOException \ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/javadocIG/enumConstantOrdinal.html b/java/java-tests/testData/codeInsight/javadocIG/enumConstantOrdinal.html index 48566d7d0f03..f59f743f6d48 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/enumConstantOrdinal.html +++ b/java/java-tests/testData/codeInsight/javadocIG/enumConstantOrdinal.html @@ -1,2 +1,2 @@ -

E A
-// Enum constant ordinal: 0
 E
\ No newline at end of file +
 E
E A
+// Enum constant ordinal: 0
diff --git a/java/java-tests/testData/codeInsight/javadocIG/enumValueOf.html b/java/java-tests/testData/codeInsight/javadocIG/enumValueOf.html index 9e9df4b6f2cf..bfa54298fbc9 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/enumValueOf.html +++ b/java/java-tests/testData/codeInsight/javadocIG/enumValueOf.html @@ -1,4 +1,4 @@ -
@Contract(value = "_ -> param1", pure = true)i 
+
 En
@Contract(value = "_ -> param1", pure = true)i 
 static int valueOf(
int i
)
myjavadoc -

Params:

i

Returns:

 En
\ No newline at end of file +

Params:

i

Returns:

diff --git a/java/java-tests/testData/codeInsight/javadocIG/escapingInLiteral.html b/java/java-tests/testData/codeInsight/javadocIG/escapingInLiteral.html index 36ebafc53ea9..b2005996a1bf 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/escapingInLiteral.html +++ b/java/java-tests/testData/codeInsight/javadocIG/escapingInLiteral.html @@ -1,3 +1,3 @@ -
int foo
+
 Foo
int foo
&gt; is > &lt; is < &quot; is " -

 Foo
\ No newline at end of file +

diff --git a/java/java-tests/testData/codeInsight/javadocIG/escapingStringValue.html b/java/java-tests/testData/codeInsight/javadocIG/escapingStringValue.html index 25914827640d..5260cb11e3e8 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/escapingStringValue.html +++ b/java/java-tests/testData/codeInsight/javadocIG/escapingStringValue.html @@ -1 +1 @@ -
public static void JAVADOC_ME()
The value of B is "a<b".
 A
\ No newline at end of file +
 A
public static void JAVADOC_ME()
The value of B is "a<b".
diff --git a/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithArray.html b/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithArray.html index c339ecba72ef..0ca491cca6bc 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithArray.html +++ b/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithArray.html @@ -1 +1 @@ -
public static int[] x = new int[]{1, 2, 3}
 A
\ No newline at end of file +
 A
public static int[] x = new int[]{1, 2, 3}
diff --git a/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithLambda.html b/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithLambda.html index 7156377a3df2..10abad819b35 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithLambda.html +++ b/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithLambda.html @@ -1 +1 @@ -
public static java.util.function.Consumer<Integer> F = i -> System.out.println(i)
 A
\ No newline at end of file +
 A
public static java.util.function.Consumer<Integer> F = i -> System.out.println(i)
diff --git a/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithSizedArray.html b/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithSizedArray.html index 481b48f28cb5..e4ef5f905b69 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithSizedArray.html +++ b/java/java-tests/testData/codeInsight/javadocIG/fieldInitializedWithSizedArray.html @@ -1 +1 @@ -
public static int[] x = new int[1]
 A
\ No newline at end of file +
 A
public static int[] x = new int[1]
diff --git a/java/java-tests/testData/codeInsight/javadocIG/fieldValue.html b/java/java-tests/testData/codeInsight/javadocIG/fieldValue.html index a249434c9573..fe45f818d890 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/fieldValue.html +++ b/java/java-tests/testData/codeInsight/javadocIG/fieldValue.html @@ -1 +1 @@ -
public static int JAVADOC_ME = 23
The value of the field is 23.

 A
\ No newline at end of file +
 A
public static int JAVADOC_ME = 23
The value of the field is 23.

diff --git a/java/java-tests/testData/codeInsight/javadocIG/htmlLinkProject/htmlLink.html b/java/java-tests/testData/codeInsight/javadocIG/htmlLinkProject/htmlLink.html index 91ccfce80760..7f247a10f279 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/htmlLinkProject/htmlLink.html +++ b/java/java-tests/testData/codeInsight/javadocIG/htmlLinkProject/htmlLink.html @@ -1 +1 @@ -
class htmlLink

\ No newline at end of file +
class htmlLink

diff --git a/java/java-tests/testData/codeInsight/javadocIG/htmlLinkProject/pack/htmlLinkDeep.html b/java/java-tests/testData/codeInsight/javadocIG/htmlLinkProject/pack/htmlLinkDeep.html index 4c3963d0115f..83644e22c533 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/htmlLinkProject/pack/htmlLinkDeep.html +++ b/java/java-tests/testData/codeInsight/javadocIG/htmlLinkProject/pack/htmlLinkDeep.html @@ -1 +1 @@ -
class htmlLinkDeep

\ No newline at end of file +
class htmlLinkDeep

diff --git a/java/java-tests/testData/codeInsight/javadocIG/htmlLinkToPackageInfo/pack/A.html b/java/java-tests/testData/codeInsight/javadocIG/htmlLinkToPackageInfo/pack/A.html index 45ae4152212e..7f95f0aae79c 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/htmlLinkToPackageInfo/pack/A.html +++ b/java/java-tests/testData/codeInsight/javadocIG/htmlLinkToPackageInfo/pack/A.html @@ -1,3 +1,3 @@ -
class A
+
class A
link -

\ No newline at end of file +

diff --git a/java/java-tests/testData/codeInsight/javadocIG/ideadev2326.html b/java/java-tests/testData/codeInsight/javadocIG/ideadev2326.html index 3a6ca58ea0f3..19f731d7f6c0 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/ideadev2326.html +++ b/java/java-tests/testData/codeInsight/javadocIG/ideadev2326.html @@ -1,2 +1,2 @@ -
public Object read()
-throws IOException

Throws:

IOException – if an I/O error occurs while reading.

EOFException – if this source is already closed when the read() is called, or is closed during the read().

InterruptedIOException – if the reading thread is interrupted.

\ No newline at end of file +
public Object read()
+throws IOException

Throws:

IOException – if an I/O error occurs while reading.

EOFException – if this source is already closed when the read() is called, or is closed during the read().

InterruptedIOException – if the reading thread is interrupted.

diff --git a/java/java-tests/testData/codeInsight/javadocIG/inheritedDocInThrows.html b/java/java-tests/testData/codeInsight/javadocIG/inheritedDocInThrows.html index e652efcb269d..02c6e4601a1a 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/inheritedDocInThrows.html +++ b/java/java-tests/testData/codeInsight/javadocIG/inheritedDocInThrows.html @@ -1,2 +1,2 @@ -
void foo()
-throws IOException

Overrides:

foo in class A

Throws:

IOException – la-la-la

\ No newline at end of file +
void foo()
+throws IOException

Overrides:

foo in class A

Throws:

IOException – la-la-la

diff --git a/java/java-tests/testData/codeInsight/javadocIG/inheritedDocInThrows1.html b/java/java-tests/testData/codeInsight/javadocIG/inheritedDocInThrows1.html index 57f7bbdbbc19..60c29feb84e3 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/inheritedDocInThrows1.html +++ b/java/java-tests/testData/codeInsight/javadocIG/inheritedDocInThrows1.html @@ -1,2 +1,2 @@ -
void foo()
-throws IOException

Overrides:

foo in class A

Throws:

IOException – comment

\ No newline at end of file +
void foo()
+throws IOException

Overrides:

foo in class A

Throws:

IOException – comment

diff --git a/java/java-tests/testData/codeInsight/javadocIG/initializerWithLiteral.html b/java/java-tests/testData/codeInsight/javadocIG/initializerWithLiteral.html index 05cddab4b2e2..0077359d6907 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/initializerWithLiteral.html +++ b/java/java-tests/testData/codeInsight/javadocIG/initializerWithLiteral.html @@ -1 +1 @@ -
public String strings = "A<BLANK>B"
 A
\ No newline at end of file +
 A
public String strings = "A<BLANK>B"
diff --git a/java/java-tests/testData/codeInsight/javadocIG/initializerWithNew.html b/java/java-tests/testData/codeInsight/javadocIG/initializerWithNew.html index a92451f119ef..f693a2da41ca 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/initializerWithNew.html +++ b/java/java-tests/testData/codeInsight/javadocIG/initializerWithNew.html @@ -1,2 +1,2 @@ -
public List<String> strings
-    = new ArrayList<String>(new ArrayList<Integer>(), Collections.singleton(new ArrayList<Double>()))
 A
\ No newline at end of file +
 A
public List<String> strings
+    = new ArrayList<String>(new ArrayList<Integer>(), Collections.singleton(new ArrayList<Double>()))
diff --git a/java/java-tests/testData/codeInsight/javadocIG/initializerWithReference.html b/java/java-tests/testData/codeInsight/javadocIG/initializerWithReference.html index d035ce7b7995..66ebf158f9df 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/initializerWithReference.html +++ b/java/java-tests/testData/codeInsight/javadocIG/initializerWithReference.html @@ -1 +1 @@ -
public int field = anotherField
\ No newline at end of file +
public int field = anotherField
diff --git a/java/java-tests/testData/codeInsight/javadocIG/literal.html b/java/java-tests/testData/codeInsight/javadocIG/literal.html index c90ddfd76038..41d97dc66ef1 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/literal.html +++ b/java/java-tests/testData/codeInsight/javadocIG/literal.html @@ -1,3 +1,3 @@ -
int foo
+
 Foo
int foo
foo<> -

 Foo
\ No newline at end of file +

diff --git a/java/java-tests/testData/codeInsight/javadocIG/matchingParameterNameFromParent.html b/java/java-tests/testData/codeInsight/javadocIG/matchingParameterNameFromParent.html index 0235e5763644..289fb591df37 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/matchingParameterNameFromParent.html +++ b/java/java-tests/testData/codeInsight/javadocIG/matchingParameterNameFromParent.html @@ -1 +1 @@ -
void m(
int bar
)

Overrides:

m in class Foo

Params:

bar – description
 Bar
\ No newline at end of file +
 Bar
void m(
int bar
)

Overrides:

m in class Foo

Params:

bar – description
diff --git a/java/java-tests/testData/codeInsight/javadocIG/matchingTypeParameterNameFromParent.html b/java/java-tests/testData/codeInsight/javadocIG/matchingTypeParameterNameFromParent.html index f60342a84806..f5495bc7c01b 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/matchingTypeParameterNameFromParent.html +++ b/java/java-tests/testData/codeInsight/javadocIG/matchingTypeParameterNameFromParent.html @@ -1 +1 @@ -
<U> void m(
U u
)

Overrides:

m in class Foo

Type parameters:

<U> – description
 Bar
\ No newline at end of file +
 Bar
<U> void m(
U u
)

Overrides:

m in class Foo

Type parameters:

<U> – description
diff --git a/java/java-tests/testData/codeInsight/javadocIG/methodExpressionWithLiteral.html b/java/java-tests/testData/codeInsight/javadocIG/methodExpressionWithLiteral.html index 14c5dac2fb8c..a6288fcc5f54 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/methodExpressionWithLiteral.html +++ b/java/java-tests/testData/codeInsight/javadocIG/methodExpressionWithLiteral.html @@ -1 +1 @@ -
public byte[] bytes = "&amp;".getBytes()
 A
\ No newline at end of file +
 A
public byte[] bytes = "&amp;".getBytes()
diff --git a/java/java-tests/testData/codeInsight/javadocIG/methodFormatting.html b/java/java-tests/testData/codeInsight/javadocIG/methodFormatting.html index d95ee3001f23..c48bb7961128 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/methodFormatting.html +++ b/java/java-tests/testData/codeInsight/javadocIG/methodFormatting.html @@ -1,3 +1,3 @@ -
<E extends Exception> @Anno String drainTo(
Consumer<? super T, E> consumer, +
<E extends Exception> @Anno String drainTo(
Consumer<? super T, E> consumer, Object someParameter
) -throws E

Throws:

E

\ No newline at end of file +throws E

Throws:

E

diff --git a/java/java-tests/testData/codeInsight/javadocIG/methodTypeParameter.html b/java/java-tests/testData/codeInsight/javadocIG/methodTypeParameter.html index 299108c58cb6..4b32ca770482 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/methodTypeParameter.html +++ b/java/java-tests/testData/codeInsight/javadocIG/methodTypeParameter.html @@ -1 +1 @@ -
<T> void foo(
T t
)

\ No newline at end of file +
<T> void foo(
T t
)

diff --git a/java/java-tests/testData/codeInsight/javadocIG/pInsidePre.html b/java/java-tests/testData/codeInsight/javadocIG/pInsidePre.html index 05287d3a527d..6941b527235b 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/pInsidePre.html +++ b/java/java-tests/testData/codeInsight/javadocIG/pInsidePre.html @@ -1,7 +1,7 @@ -
public String field = null
+
public String field = null
       foo
       

bar
-

\ No newline at end of file +

diff --git a/java/java-tests/testData/codeInsight/javadocIG/simpleField.html b/java/java-tests/testData/codeInsight/javadocIG/simpleField.html index 67496f97a477..eab5b3674e8b 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/simpleField.html +++ b/java/java-tests/testData/codeInsight/javadocIG/simpleField.html @@ -1 +1 @@ -
public static int JAVADOC_ME
Test

 A
\ No newline at end of file +
 A
public static int JAVADOC_ME
Test

diff --git a/java/java-tests/testData/codeInsight/javadocIG/superJavadocErasureResolve.html b/java/java-tests/testData/codeInsight/javadocIG/superJavadocErasureResolve.html index a580c8f2d8f1..46437033ffaa 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/superJavadocErasureResolve.html +++ b/java/java-tests/testData/codeInsight/javadocIG/superJavadocErasureResolve.html @@ -1 +1 @@ -
E remove(
Integer idx
)

See Also:

TestImpl.remove(Number)

\ No newline at end of file +
E remove(
Integer idx
)

See Also:

TestImpl.remove(Number)

diff --git a/java/java-tests/testData/codeInsight/javadocIG/superJavadocExactResolve.html b/java/java-tests/testData/codeInsight/javadocIG/superJavadocExactResolve.html index 9ff7fa1b0290..e4f503f099f9 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/superJavadocExactResolve.html +++ b/java/java-tests/testData/codeInsight/javadocIG/superJavadocExactResolve.html @@ -1 +1 @@ -
E remove(
int idx
)

See Also:

TestImpl.remove(int)

\ No newline at end of file +
E remove(
int idx
)

See Also:

TestImpl.remove(int)

diff --git a/java/java-tests/testData/codeInsight/javadocIG/syntheticEnumValues.html b/java/java-tests/testData/codeInsight/javadocIG/syntheticEnumValues.html index d607fe96b0c4..414ad415ef39 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/syntheticEnumValues.html +++ b/java/java-tests/testData/codeInsight/javadocIG/syntheticEnumValues.html @@ -1,4 +1,4 @@ -
@Contract(value = " -> new", pure = true)i 
+
 E
@Contract(value = " -> new", pure = true)i 
 public static E[] values()
Returns an array containing the constants of this enum type, in the order they're declared. This method may be @@ -8,4 +8,4 @@ System.out.println(c);
-

Returns:

an array containing the constants of this enum type, in the order they're declared

 E
\ No newline at end of file +

Returns:

an array containing the constants of this enum type, in the order they're declared

\ No newline at end of file diff --git a/java/java-tests/testData/codeInsight/javadocIG/typeAnnotation.html b/java/java-tests/testData/codeInsight/javadocIG/typeAnnotation.html index bed4a2d1fbc8..4da86e86c6ae 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/typeAnnotation.html +++ b/java/java-tests/testData/codeInsight/javadocIG/typeAnnotation.html @@ -1 +1 @@ -
public <@Foo(1) T extends @Foo(2) CharSequence & @Foo(3) Cloneable> @Foo(4) List<@Foo(5) ? super @Foo(6) T> bar()
 Test
\ No newline at end of file +
 Test
public <@Foo(1) T extends @Foo(2) CharSequence & @Foo(3) Cloneable> @Foo(4) List<@Foo(5) ? super @Foo(6) T> bar()
diff --git a/java/java-tests/testData/codeInsight/javadocIG/typeAnnotationArray.html b/java/java-tests/testData/codeInsight/javadocIG/typeAnnotationArray.html index 2c55c3404cb7..3804053ad7a9 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/typeAnnotationArray.html +++ b/java/java-tests/testData/codeInsight/javadocIG/typeAnnotationArray.html @@ -1 +1 @@ -
public @Foo(1) String @Foo(2) [] foo()
 Test
\ No newline at end of file +
 Test
public @Foo(1) String @Foo(2) [] foo()
diff --git a/java/java-tests/testData/codeInsight/javadocIG/unknownTag.html b/java/java-tests/testData/codeInsight/javadocIG/unknownTag.html index 57bdcb21bab3..6cfe2378831f 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/unknownTag.html +++ b/java/java-tests/testData/codeInsight/javadocIG/unknownTag.html @@ -1,2 +1,2 @@ -
void foo()

unknown

inline tag -

unknown

inline tag2

 Main
\ No newline at end of file +
 Main
void foo()

unknown

inline tag +

unknown

inline tag2

diff --git a/java/java-tests/testData/codeInsight/javadocIG/valueInMethod.html b/java/java-tests/testData/codeInsight/javadocIG/valueInMethod.html index df6df702992d..cd32a2ee8d16 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/valueInMethod.html +++ b/java/java-tests/testData/codeInsight/javadocIG/valueInMethod.html @@ -1 +1 @@ -
public static void JAVADOC_ME()
The value of A is 23.
 A
\ No newline at end of file +
 A
public static void JAVADOC_ME()
The value of A is 23.
diff --git a/java/java-tests/testData/codeInsight/javadocIG/valueInMethodNoHash.html b/java/java-tests/testData/codeInsight/javadocIG/valueInMethodNoHash.html index df6df702992d..cd32a2ee8d16 100644 --- a/java/java-tests/testData/codeInsight/javadocIG/valueInMethodNoHash.html +++ b/java/java-tests/testData/codeInsight/javadocIG/valueInMethodNoHash.html @@ -1 +1 @@ -
public static void JAVADOC_ME()
The value of A is 23.
 A
\ No newline at end of file +
 A
public static void JAVADOC_ME()
The value of A is 23.
diff --git a/java/java-tests/testData/inspection/javaDoc/JavaDocDeclaration.java b/java/java-tests/testData/inspection/javaDoc/JavaDocDeclaration.java new file mode 100644 index 000000000000..ba3628b74681 --- /dev/null +++ b/java/java-tests/testData/inspection/javaDoc/JavaDocDeclaration.java @@ -0,0 +1,15 @@ + +enum JavaDocDeclaration { + FOO(1), + ; + + private final int magicConstant; + + EnumConstructor(@MagicConstant(valuesFromClass = MagicConstantIds.class) int magicConstant) { + this.magicConstant = magicConstant; + } +} +class MagicConstantIds { + static final int ONE = 1; + private static final int TWO = 2; +} diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/JavaDocumentationTest.groovy b/java/java-tests/testSrc/com/intellij/java/codeInsight/JavaDocumentationTest.groovy index a26a40599b52..0293afc3ec52 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInsight/JavaDocumentationTest.groovy +++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/JavaDocumentationTest.groovy @@ -75,7 +75,7 @@ class JavaDocumentationTest extends LightJavaCodeInsightFixtureTestCase { def doc = new JavaDocumentationProvider().generateDoc(exprList, null) def expected = - """
void doFoo()

 Foo
""" + """
 Foo
void doFoo()

""" assert doc == expected } @@ -157,7 +157,7 @@ class JavaDocumentationTest extends LightJavaCodeInsightFixtureTestCase { def doc = new JavaDocumentationProvider().generateDoc(method, null) def expected = - "
public void m()
\n For example, String.String(byte[], int, int, String).\n
 C
" + "
 C
public void m()
\n For example, String.String(byte[], int, int, String).\n
" assert doc == expected } @@ -173,7 +173,7 @@ class JavaDocumentationTest extends LightJavaCodeInsightFixtureTestCase { def doc = new JavaDocumentationProvider().generateDoc(method, null) def expected = - """
public void m()
Visit the "/login" URL.
 C
""" + """
 C
public void m()
Visit the "/login" URL.
""" assert doc == expected } @@ -217,7 +217,7 @@ class Bar { def method = PsiTreeUtil.getParentOfType(myFixture.file.findElementAt(myFixture.editor.caretModel.offset), PsiMethod.class) def doc = new JavaDocumentationProvider().generateDoc(method, null) - String expected = "
void foo()

From class:

Foo
\n Some doc\n

 Bar
" + String expected = "
 Bar
void foo()

From class:

Foo
\n Some doc\n

" assert doc == expected } diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/javadoc/LightJavadocGeneratorTest.kt b/java/java-tests/testSrc/com/intellij/java/codeInsight/javadoc/LightJavadocGeneratorTest.kt index 998a77cf3661..4b52eb7a5155 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInsight/javadoc/LightJavadocGeneratorTest.kt +++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/javadoc/LightJavadocGeneratorTest.kt @@ -38,7 +38,7 @@ class LightJavadocGeneratorTest : LightJavaCodeInsightFixtureTestCase() { private fun doTestLink(link: String, expected: String) { doTestClass( "package a.b;\n/** A link. */\ninterface I { }", - "
interface I
A link.
") + "
a.b
interface I
A link.
") } private fun doTestClass(text: String, expected: String) { @@ -51,4 +51,4 @@ class LightJavadocGeneratorTest : LightJavaCodeInsightFixtureTestCase() { ?.replace(" ", " ") ?.substringBeforeLast("

") // -} \ No newline at end of file +} diff --git a/java/java-tests/testSrc/com/intellij/java/codeInspection/JavadocDeclarationInspectionTest.java b/java/java-tests/testSrc/com/intellij/java/codeInspection/JavadocDeclarationInspectionTest.java new file mode 100644 index 000000000000..3239089d9345 --- /dev/null +++ b/java/java-tests/testSrc/com/intellij/java/codeInspection/JavadocDeclarationInspectionTest.java @@ -0,0 +1,7 @@ +// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +package com.intellij.java.codeInspection; + +import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase; + +public class JavadocDeclarationInspectionTest extends LightJavaCodeInsightFixtureTestCase { +} diff --git a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/references/extensions/ExtensionPointDocumentationProviderTest.java b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/references/extensions/ExtensionPointDocumentationProviderTest.java index 8591274ef81e..d3e21e91432d 100644 --- a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/references/extensions/ExtensionPointDocumentationProviderTest.java +++ b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/references/extensions/ExtensionPointDocumentationProviderTest.java @@ -49,11 +49,11 @@ public class ExtensionPointDocumentationProviderTest extends LightJavaCodeInsigh assertEquals( "
foo.bar
" + pluginXml + - "
public class MyExtensionPoint
\n" + + "
 bar
public class MyExtensionPoint
\n" + " MyExtensionPoint JavaDoc.\n" + - "

 bar

implementationClass

String (required)

stringCanBeEmpty

String (required, empty allowed)

<intValue>

Integer
Show Usages in IntelliJ Platform Explorer

Extension Point Implementation

public interface MyExtension
\n" + + "


implementationClass

String (required)

stringCanBeEmpty

String (required, empty allowed)

<intValue>

Integer
Show Usages in IntelliJ Platform Explorer

Extension Point Implementation

 bar
public interface MyExtension
\n" + " My Extension Javadoc.\n" + - "

 bar
", + "

", provider.generateDoc(docElement, getOriginalElement())); } @@ -73,9 +73,9 @@ public class ExtensionPointDocumentationProviderTest extends LightJavaCodeInsigh provider.getQuickNavigateInfo(docElement, getOriginalElement())); assertEquals( - "
foo.bar
interfaceExtensionPointDocumentation.xml
Show Usages in IntelliJ Platform Explorer

Extension Point Implementation

public interface MyExtension
\n" + + "
foo.bar
interfaceExtensionPointDocumentation.xml

Extension Point Implementation

 bar
public interface MyExtension
\n" + " My Extension Javadoc.\n" + - "

 bar
", + "

", provider.generateDoc(docElement, getOriginalElement())); } -} \ No newline at end of file +} diff --git a/plugins/groovy/test/org/jetbrains/plugins/groovy/GroovyDocumentationTest.groovy b/plugins/groovy/test/org/jetbrains/plugins/groovy/GroovyDocumentationTest.groovy index f665a8c4c5da..81c957886d13 100644 --- a/plugins/groovy/test/org/jetbrains/plugins/groovy/GroovyDocumentationTest.groovy +++ b/plugins/groovy/test/org/jetbrains/plugins/groovy/GroovyDocumentationTest.groovy @@ -44,9 +44,9 @@ class Gr { } new Gr().foo() ''', '''\ -
void foo()
+
 Gr
void foo()
Use bar() from class Gr instead -
 Gr
''' +
''' } void 'test link with label'() { @@ -57,9 +57,9 @@ new Gr().foo() def docs() {} docs() -''', '''
Object docs()
+''', '''
 _
Object docs()
check this out character sequences -
 _
''' +
''' } void 'test link to method'() { @@ -79,13 +79,13 @@ class Main { } Main.docs() ''', '''\ -
static void docs()
+
static void docs()
\ +
\ ''' } @@ -117,9 +117,9 @@ class Foo { } new Foo().foo() ''', '''\ -
String foo()
+
 Foo
String foo()
May return null -
 Foo
\ +
\ ''' } @@ -132,7 +132,7 @@ def foo() {} foo()""", """\ -
Object foo()

Returns:

lorem ipsum

 _
\ +
 _
Object foo()

Returns:

lorem ipsum

\ """ } @@ -172,9 +172,9 @@ new GroovyDocTest()""", """\ */ def foo() {} foo() -""", "
Object foo()
\n" + +""", "
 _
Object foo()
\n" + " aaa bbb ccc\n" + - "
 _
" + "
" } private void doTest(String text, @Language("HTML") String doc) { diff --git a/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaClassConstructorUsedInKotlin.kt b/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaClassConstructorUsedInKotlin.kt index 7b5dd6736c0d..0a25853b110f 100644 --- a/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaClassConstructorUsedInKotlin.kt +++ b/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaClassConstructorUsedInKotlin.kt @@ -2,6 +2,6 @@ fun testing() { SomeClassWithParen("param", 1) } -//INFO:
@Contract(pure = true)i 
+//INFO: 
@Contract(pure = true)i 
 //INFO: public SomeClassWithParen(
String str, -//INFO: int num
)

+//INFO: int num
)

diff --git a/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaMethodUsedInKotlin.kt b/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaMethodUsedInKotlin.kt index 601d366555a5..613085051697 100644 --- a/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaMethodUsedInKotlin.kt +++ b/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaMethodUsedInKotlin.kt @@ -2,8 +2,8 @@ fun ktTest() { Test.foo("SomeTest") } -//INFO:
@Contract(value = "_ -> new", pure = true)i 
+//INFO: 
@Contract(value = "_ -> new", pure = true)i 
 //INFO: @NotNulli 
 //INFO: public static Object[] foo(
String param
)
//INFO: Java Method -//INFO:
+//INFO:
diff --git a/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaMethodUsedInKotlinInParen.kt b/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaMethodUsedInKotlinInParen.kt index d8ba4ce84987..db7974e05715 100644 --- a/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaMethodUsedInKotlinInParen.kt +++ b/plugins/kotlin/idea/tests/testData/editor/quickDoc/JavaMethodUsedInKotlinInParen.kt @@ -2,9 +2,9 @@ fun ktTestWithParen() { TestWithParen.foo("SomeTest", 1) } -//INFO:
@Contract(value = "_, _ -> new", pure = true)i 
+//INFO: 
@Contract(value = "_, _ -> new", pure = true)i 
 //INFO: @NotNulli 
 //INFO: public static Object[] foo(
String str, //INFO: int num
)
//INFO: Java Method -//INFO:
+//INFO:
diff --git a/plugins/kotlin/idea/tests/testData/editor/quickDoc/KotlinPackageClassUsedFromJava.java b/plugins/kotlin/idea/tests/testData/editor/quickDoc/KotlinPackageClassUsedFromJava.java index 0e99eacad638..57f448161ae9 100644 --- a/plugins/kotlin/idea/tests/testData/editor/quickDoc/KotlinPackageClassUsedFromJava.java +++ b/plugins/kotlin/idea/tests/testData/editor/quickDoc/KotlinPackageClassUsedFromJava.java @@ -6,4 +6,4 @@ class KotlinPackageClassUsedFromJava { } } -//INFO:
public final class KotlinPackageClassUsedFromJava_DataKt
+//INFO:
public final class KotlinPackageClassUsedFromJava_DataKt