aboutsummaryrefslogtreecommitdiff
path: root/plugins/javadoc
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/javadoc')
-rw-r--r--plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/AbstractJavadocTemplateMapTest.kt7
-rw-r--r--plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/location/JavadocLinkingTest.kt74
-rw-r--r--plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/location/JavadocLocationTest.kt10
3 files changed, 80 insertions, 11 deletions
diff --git a/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/AbstractJavadocTemplateMapTest.kt b/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/AbstractJavadocTemplateMapTest.kt
index 09feebe9..ec5c215e 100644
--- a/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/AbstractJavadocTemplateMapTest.kt
+++ b/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/AbstractJavadocTemplateMapTest.kt
@@ -1,7 +1,6 @@
package org.jetbrains.dokka.javadoc
-import org.jetbrains.dokka.DokkaConfigurationImpl
-import org.jetbrains.dokka.ExternalDocumentationLink
+import org.jetbrains.dokka.*
import org.jetbrains.dokka.javadoc.pages.JavadocPageNode
import org.jetbrains.dokka.javadoc.renderer.JavadocContentToTemplateMapTranslator
import org.jetbrains.dokka.javadoc.JavadocPlugin
@@ -19,8 +18,8 @@ internal abstract class AbstractJavadocTemplateMapTest : AbstractCoreTest() {
sourceRoots = listOf("src")
analysisPlatform = "jvm"
externalDocumentationLinks = listOf(
- ExternalDocumentationLink("https://docs.oracle.com/javase/8/docs/api/"),
- ExternalDocumentationLink("https://kotlinlang.org/api/latest/jvm/stdlib/")
+ DokkaConfiguration.ExternalDocumentationLink.jdk(8),
+ DokkaConfiguration.ExternalDocumentationLink.kotlinStdlib()
)
}
}
diff --git a/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/location/JavadocLinkingTest.kt b/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/location/JavadocLinkingTest.kt
new file mode 100644
index 00000000..95dc6a2e
--- /dev/null
+++ b/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/location/JavadocLinkingTest.kt
@@ -0,0 +1,74 @@
+package org.jetbrains.dokka.javadoc.location
+
+import org.jetbrains.dokka.DokkaConfiguration
+import org.jetbrains.dokka.jdk
+import org.jetbrains.dokka.kotlinStdlib
+import org.jetbrains.dokka.model.doc.DocumentationLink
+import org.jetbrains.dokka.model.doc.Text
+import org.jetbrains.dokka.testApi.testRunner.AbstractCoreTest
+import org.jetbrains.dokka.utilities.cast
+import org.junit.jupiter.api.Test
+import utils.TestOutputWriterPlugin
+import kotlin.test.assertEquals
+
+class JavadocLinkingTest : AbstractCoreTest() {
+
+ @Test
+ fun lineBrokenLink() {
+ val config = dokkaConfiguration {
+ sourceSets {
+ sourceSet {
+ sourceRoots = listOf("jvmSrc/")
+ externalDocumentationLinks = listOf(
+ DokkaConfiguration.ExternalDocumentationLink.jdk(8),
+ DokkaConfiguration.ExternalDocumentationLink.kotlinStdlib(),
+ )
+ analysisPlatform = "jvm"
+ }
+ }
+ }
+ testInline(
+ """
+ |/jvmSrc/javadoc/test/SomeClass.kt
+ |
+ |package example
+ |
+ |class SomeClass {
+ | fun someFun(x: Int): Int = 1
+ |}
+ |
+ |/jvmSrc/javadoc/test/SomeJavaDocExample.java
+ |
+ |package example;
+ |
+ |/**
+ | * Here comes some comment
+ | *
+ | * {@link example.SomeClass#someFun(int) someName(ads,
+ | * dsa)}
+ | *
+ | * longer comment
+ | */
+ |public class SomeJavaDocExample {
+ | public void someFunc(int integer, Object object) {
+ | }
+ |}
+ """.trimMargin(),
+ config,
+ pluginOverrides = listOf(TestOutputWriterPlugin())
+ ) {
+ documentablesMergingStage = {
+ it.packages.single()
+ .classlikes.single { classlike -> classlike.name == "SomeJavaDocExample" }
+ .documentation.values.single()
+ .children.single()
+ .children.single()
+ .children.single {
+ it is DocumentationLink
+ }.children.filterIsInstance<Text>().single { it.body.contains("someName") }.cast<Text>().body.run {
+ assertEquals("someName(ads, dsa)", this)
+ }
+ }
+ }
+ }
+}
diff --git a/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/location/JavadocLocationTest.kt b/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/location/JavadocLocationTest.kt
index 87de4228..c8ae59e3 100644
--- a/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/location/JavadocLocationTest.kt
+++ b/plugins/javadoc/src/test/kotlin/org/jetbrains/dokka/javadoc/location/JavadocLocationTest.kt
@@ -1,11 +1,9 @@
package org.jetbrains.dokka.javadoc.location
+import org.jetbrains.dokka.*
import org.jetbrains.dokka.javadoc.pages.JavadocClasslikePageNode
import org.jetbrains.dokka.javadoc.pages.JavadocPackagePageNode
import org.jetbrains.dokka.javadoc.renderer.JavadocContentToHtmlTranslator
-import org.jetbrains.dokka.DokkaConfiguration
-import org.jetbrains.dokka.ExternalDocumentationLink
-import org.jetbrains.dokka.ExternalDocumentationLinkImpl
import org.jetbrains.dokka.javadoc.JavadocPlugin
import org.jetbrains.dokka.model.firstChildOfType
import org.jetbrains.dokka.pages.RootPageNode
@@ -19,16 +17,14 @@ import org.junit.jupiter.api.Assertions.assertEquals
class JavadocLocationTest : AbstractCoreTest() {
private fun locationTestInline(testHandler: (RootPageNode, DokkaContext) -> Unit) {
- fun externalLink(link: String) = ExternalDocumentationLink(link)
-
val config = dokkaConfiguration {
format = "javadoc"
sourceSets {
sourceSet {
sourceRoots = listOf("jvmSrc/")
externalDocumentationLinks = listOf(
- externalLink("https://docs.oracle.com/javase/8/docs/api/"),
- externalLink("https://kotlinlang.org/api/latest/jvm/stdlib/")
+ DokkaConfiguration.ExternalDocumentationLink.jdk(8),
+ DokkaConfiguration.ExternalDocumentationLink.kotlinStdlib()
)
analysisPlatform = "jvm"
}