<lambda>null1 package org.jetbrains.dokka.tests
2
3 import org.jetbrains.dokka.ContentBlock
4 import org.jetbrains.dokka.ContentNodeLazyLink
5 import org.jetbrains.dokka.NodeKind
6 import org.junit.Assert.assertEquals
7 import org.junit.Test
8
9 class LinkTest {
10 @Test fun linkToSelf() {
11 verifyModel("testdata/links/linkToSelf.kt") { model ->
12 with(model.members.single().members.single()) {
13 assertEquals("Foo", name)
14 assertEquals(NodeKind.Class, kind)
15 assertEquals("This is link to [Foo -> Class:Foo]", content.summary.toTestString())
16 }
17 }
18 }
19
20 @Test fun linkToMember() {
21 verifyModel("testdata/links/linkToMember.kt") { model ->
22 with(model.members.single().members.single()) {
23 assertEquals("Foo", name)
24 assertEquals(NodeKind.Class, kind)
25 assertEquals("This is link to [member -> Function:member]", content.summary.toTestString())
26 }
27 }
28 }
29
30 @Test fun linkToConstantWithUnderscores() {
31 verifyModel("testdata/links/linkToConstantWithUnderscores.kt") { model ->
32 with(model.members.single().members.single()) {
33 assertEquals("Foo", name)
34 assertEquals(NodeKind.Class, kind)
35 assertEquals("This is link to [MY_CONSTANT_VALUE -> CompanionObjectProperty:MY_CONSTANT_VALUE]", content.summary.toTestString())
36 }
37 }
38 }
39
40 @Test fun linkToQualifiedMember() {
41 verifyModel("testdata/links/linkToQualifiedMember.kt") { model ->
42 with(model.members.single().members.single()) {
43 assertEquals("Foo", name)
44 assertEquals(NodeKind.Class, kind)
45 assertEquals("This is link to [Foo.member -> Function:member]", content.summary.toTestString())
46 }
47 }
48 }
49
50 @Test fun linkToParam() {
51 verifyModel("testdata/links/linkToParam.kt") { model ->
52 with(model.members.single().members.single()) {
53 assertEquals("Foo", name)
54 assertEquals(NodeKind.Function, kind)
55 assertEquals("This is link to [param -> Parameter:param]", content.summary.toTestString())
56 }
57 }
58 }
59
60 @Test fun linkToPackage() {
61 verifyModel("testdata/links/linkToPackage.kt") { model ->
62 val packageNode = model.members.single()
63 with(packageNode) {
64 assertEquals(this.name, "test.magic")
65 }
66 with(packageNode.members.single()) {
67 assertEquals("Magic", name)
68 assertEquals(NodeKind.Class, kind)
69 assertEquals("Basic implementations of [Magic -> Class:Magic] are located in [test.magic -> Package:test.magic] package", content.summary.toTestString())
70 assertEquals(packageNode, ((this.content.summary as ContentBlock).children.filterIsInstance<ContentNodeLazyLink>().last()).lazyNode.invoke())
71 }
72 }
73 }
74
75 }