diff options
author | Marcin Aman <maman@virtuslab.com> | 2020-05-07 17:10:10 +0200 |
---|---|---|
committer | Paweł Marks <Kordyjan@users.noreply.github.com> | 2020-05-19 13:47:03 +0200 |
commit | 3aeb65472be150a6098f2fac17dbdf0bb2a40013 (patch) | |
tree | 03540fe12ce6b139fbb7658a2d57d0e97023721c /plugins/base/src/test/kotlin/markdown | |
parent | e9d7fc75b46bb44f2c946b8cbb0636deb71e20dc (diff) | |
download | dokka-3aeb65472be150a6098f2fac17dbdf0bb2a40013.tar.gz dokka-3aeb65472be150a6098f2fac17dbdf0bb2a40013.tar.bz2 dokka-3aeb65472be150a6098f2fac17dbdf0bb2a40013.zip |
Missing generics on class. Add generics to annotation #834
Diffstat (limited to 'plugins/base/src/test/kotlin/markdown')
-rw-r--r-- | plugins/base/src/test/kotlin/markdown/LinkTest.kt | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/plugins/base/src/test/kotlin/markdown/LinkTest.kt b/plugins/base/src/test/kotlin/markdown/LinkTest.kt index d38486b5..bf234b6b 100644 --- a/plugins/base/src/test/kotlin/markdown/LinkTest.kt +++ b/plugins/base/src/test/kotlin/markdown/LinkTest.kt @@ -1,10 +1,12 @@ package markdown +import org.jetbrains.dokka.pages.ClasslikePageNode import org.jetbrains.dokka.pages.ContentDRILink import org.jetbrains.dokka.pages.MemberPageNode import org.jetbrains.dokka.pages.dfs import org.jetbrains.dokka.testApi.testRunner.AbstractCoreTest import org.junit.jupiter.api.Assertions.assertEquals +import org.junit.jupiter.api.Assertions.assertNotNull import org.junit.jupiter.api.Test class LinkTest : AbstractCoreTest() { @@ -36,11 +38,43 @@ class LinkTest : AbstractCoreTest() { .dfs { node -> node is ContentDRILink } .let { assertEquals( - "parser//test/#java.lang.ClassLoader//", + "parser//test/#java.lang.ClassLoader/PointingToDeclaration/", (it as ContentDRILink).address.toString() ) } } } } + + @Test + fun returnTypeShouldHaveLinkToOuterClassFromInner() { + val configuration = dokkaConfiguration { + passes { + pass { + sourceRoots = listOf("src/main/kotlin/parser") + } + } + } + testInline( + """ + |/src/main/kotlin/parser/Test.kt + |package parser + | + |class Outer<OUTER> { + | inner class Inner<INNER> { + | fun foo(): OUTER = TODO() + | } + |} + """.trimMargin(), + configuration + ) { + renderingStage = { rootPageNode, _ -> + val root = rootPageNode.children.single().children.single() as ClasslikePageNode + val innerClass = root.children.first { it is ClasslikePageNode } + val foo = innerClass.children.first { it.name == "foo" } as MemberPageNode + + assertNotNull(foo.content.dfs { it is ContentDRILink && it.address.toString() == "parser/Outer///PointingToDeclaration/" } ) + } + } + } }
\ No newline at end of file |