diff options
author | Ilya Ryzhenkov <orangy@jetbrains.com> | 2014-12-16 21:41:32 +0300 |
---|---|---|
committer | Ilya Ryzhenkov <orangy@jetbrains.com> | 2014-12-16 21:41:32 +0300 |
commit | bd6cddd932c308519ce386197b93de145462bec2 (patch) | |
tree | 5cb04a2cd8f7dfd7e1c679f16977a51d5d966faa /test | |
parent | 9535260e7b9f1483fbbfcf0abf4c171311fd92b7 (diff) | |
download | dokka-bd6cddd932c308519ce386197b93de145462bec2.tar.gz dokka-bd6cddd932c308519ce386197b93de145462bec2.tar.bz2 dokka-bd6cddd932c308519ce386197b93de145462bec2.zip |
Process short links.
Diffstat (limited to 'test')
-rw-r--r-- | test/data/functions/functionWithParams.kt | 1 | ||||
-rw-r--r-- | test/data/links/linkToJDK.kt | 0 | ||||
-rw-r--r-- | test/data/links/linkToMember.kt | 6 | ||||
-rw-r--r-- | test/data/links/linkToParam.kt | 5 | ||||
-rw-r--r-- | test/data/links/linkToQualifiedMember.kt | 6 | ||||
-rw-r--r-- | test/data/links/linkToSelf.kt | 6 | ||||
-rw-r--r-- | test/src/TestAPI.kt | 7 | ||||
-rw-r--r-- | test/src/markdown/ParserTest.kt | 20 | ||||
-rw-r--r-- | test/src/model/CommentTest.kt | 2 | ||||
-rw-r--r-- | test/src/model/FunctionTest.kt | 30 | ||||
-rw-r--r-- | test/src/model/LinkTest.kt | 48 | ||||
-rw-r--r-- | test/src/model/PropertyTest.kt | 4 |
12 files changed, 110 insertions, 25 deletions
diff --git a/test/data/functions/functionWithParams.kt b/test/data/functions/functionWithParams.kt index 52cd0744..85c49368 100644 --- a/test/data/functions/functionWithParams.kt +++ b/test/data/functions/functionWithParams.kt @@ -1,5 +1,6 @@ /** * Multiline + * * Function * Documentation */ diff --git a/test/data/links/linkToJDK.kt b/test/data/links/linkToJDK.kt new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/test/data/links/linkToJDK.kt diff --git a/test/data/links/linkToMember.kt b/test/data/links/linkToMember.kt new file mode 100644 index 00000000..b60eaedb --- /dev/null +++ b/test/data/links/linkToMember.kt @@ -0,0 +1,6 @@ +/** + * This is link to [member] + */ +class Foo { + fun member() {} +}
\ No newline at end of file diff --git a/test/data/links/linkToParam.kt b/test/data/links/linkToParam.kt new file mode 100644 index 00000000..ca42a742 --- /dev/null +++ b/test/data/links/linkToParam.kt @@ -0,0 +1,5 @@ +/** + * This is link to [param] + */ +fun Foo(param: String) { +}
\ No newline at end of file diff --git a/test/data/links/linkToQualifiedMember.kt b/test/data/links/linkToQualifiedMember.kt new file mode 100644 index 00000000..22c154fe --- /dev/null +++ b/test/data/links/linkToQualifiedMember.kt @@ -0,0 +1,6 @@ +/** + * This is link to [Foo.member] + */ +class Foo { + fun member() {} +}
\ No newline at end of file diff --git a/test/data/links/linkToSelf.kt b/test/data/links/linkToSelf.kt new file mode 100644 index 00000000..74395f0f --- /dev/null +++ b/test/data/links/linkToSelf.kt @@ -0,0 +1,6 @@ +/** + * This is link to [Foo] + */ +class Foo { + +}
\ No newline at end of file diff --git a/test/src/TestAPI.kt b/test/src/TestAPI.kt index ccef8919..5a4b9863 100644 --- a/test/src/TestAPI.kt +++ b/test/src/TestAPI.kt @@ -63,6 +63,13 @@ fun StringBuilder.appendNode(node: ContentNode): StringBuilder { append(node.text) } is ContentEmphasis -> append("*").appendChildren(node).append("*") + is ContentNodeLink -> { + append("[") + appendChildren(node) + append(" -> ") + append(node.node.toString()) + append("]") + } else -> { appendChildren(node) } diff --git a/test/src/markdown/ParserTest.kt b/test/src/markdown/ParserTest.kt index 16892f23..80ee7332 100644 --- a/test/src/markdown/ParserTest.kt +++ b/test/src/markdown/ParserTest.kt @@ -5,12 +5,18 @@ import org.jetbrains.dokka import org.jetbrains.dokka.toTestString import org.jetbrains.dokka.toHtml import org.jetbrains.dokka.parseMarkdown +import org.junit.Ignore -public class ParserTest { +Ignore public class ParserTest { fun runTestFor(text : String) { + println("MD: ---") + println(text) val markdownTree = parseMarkdown(text) + println("AST: ---") println(markdownTree.toTestString()) + println("HTML: ---") println(markdownTree.toHtml()) + println() } Test fun text() { @@ -89,20 +95,20 @@ number two } Test fun emphAndEmptySection() { - runTestFor("*text* \$sec:") + runTestFor("*text*\n\$sec:\n") } Test fun emphAndSection() { - runTestFor("*text* \$sec: some text") + runTestFor("*text*\n\$sec: some text\n") } Test fun emphAndBracedSection() { - runTestFor("Text *bold* text \${sec}: some text") + runTestFor("Text *bold* text \n\${sec}: some text") } Test fun section() { runTestFor( - "Plain text \$one: Summary \${two}: Description with *emphasis* \${An example of a section}: Example") + "Plain text \n\$one: Summary \n\${two}: Description with *emphasis* \n\${An example of a section}: Example") } Test fun anonymousSection() { @@ -111,12 +117,12 @@ number two Test fun specialSection() { runTestFor( - "Plain text \$\$summary: Summary \${\$description}: Description \${\$An example of a section}: Example") + "Plain text \n\$\$summary: Summary \n\${\$description}: Description \n\${\$An example of a section}: Example") } Test fun emptySection() { runTestFor( - "Plain text \$summary:") + "Plain text \n\$summary:") } val b = "$" diff --git a/test/src/model/CommentTest.kt b/test/src/model/CommentTest.kt index b2ad0ac0..5fc95726 100644 --- a/test/src/model/CommentTest.kt +++ b/test/src/model/CommentTest.kt @@ -25,7 +25,7 @@ public class CommentTest { verifyModel("test/data/comments/multilineDoc.kt") { model -> with(model.members.single().members.single()) { assertEquals("doc1", content.summary.toTestString()) - assertEquals("doc2\ndoc3\n", content.description.toTestString()) + assertEquals("doc2\ndoc3", content.description.toTestString()) } } } diff --git a/test/src/model/FunctionTest.kt b/test/src/model/FunctionTest.kt index c6ad93cc..2a4ad0a5 100644 --- a/test/src/model/FunctionTest.kt +++ b/test/src/model/FunctionTest.kt @@ -24,12 +24,10 @@ public class FunctionTest { assertEquals("fn", name) assertEquals(DocumentationNode.Kind.Function, kind) assertEquals("Function with receiver", content.summary.toTestString()) - assertEquals("Unit", details.elementAt(0).name) - assertEquals(4, details.count()) + assertEquals("internal", details.elementAt(0).name) assertEquals("final", details.elementAt(1).name) - assertEquals("internal", details.elementAt(2).name) - with(details.elementAt(3)) { + with(details.elementAt(2)) { assertEquals("<this>", name) assertEquals(DocumentationNode.Kind.Receiver, kind) assertEquals(Content.Empty, content) @@ -37,6 +35,7 @@ public class FunctionTest { assertTrue(members.none()) assertTrue(links.none()) } + assertEquals("Unit", details.elementAt(3).name) assertTrue(members.none()) assertTrue(links.none()) } @@ -51,10 +50,9 @@ public class FunctionTest { assertEquals("generic function", content.summary.toTestString()) assertEquals(4, details.count()) - assertEquals("Unit", details.elementAt(0).name) + assertEquals("private", details.elementAt(0).name) assertEquals("final", details.elementAt(1).name) - assertEquals("private", details.elementAt(2).name) - with(details.elementAt(3)) { + with(details.elementAt(2)) { assertEquals("T", name) assertEquals(DocumentationNode.Kind.TypeParameter, kind) assertEquals(Content.Empty, content) @@ -62,6 +60,7 @@ public class FunctionTest { assertTrue(members.none()) assertTrue(links.none()) } + assertEquals("Unit", details.elementAt(3).name) assertTrue(members.none()) assertTrue(links.none()) @@ -76,15 +75,16 @@ public class FunctionTest { assertEquals("generic function", content.summary.toTestString()) assertEquals(5, details.count()) - assertEquals("Unit", details.elementAt(0).name) + assertEquals("public", details.elementAt(0).name) assertEquals("final", details.elementAt(1).name) - assertEquals("public", details.elementAt(2).name) - with(details.elementAt(3)) { + with(details.elementAt(2)) { assertEquals("T", name) assertEquals(DocumentationNode.Kind.TypeParameter, kind) assertEquals(Content.Empty, content) with(details.single()) { assertEquals("R", name) + assertEquals("R", name) + assertEquals("R", name) assertEquals(DocumentationNode.Kind.UpperBound, kind) assertEquals(Content.Empty, content) assertTrue(details.none()) @@ -94,13 +94,14 @@ public class FunctionTest { assertTrue(members.none()) assertTrue(links.none()) } - with(details.elementAt(4)) { + with(details.elementAt(3)) { assertEquals("R", name) assertEquals(DocumentationNode.Kind.TypeParameter, kind) assertEquals(Content.Empty, content) assertTrue(members.none()) assertTrue(links.none()) } + assertEquals("Unit", details.elementAt(4).name) assertTrue(members.none()) assertTrue(links.none()) @@ -118,10 +119,9 @@ public class FunctionTest { Documentation""", content.description.toTestString()) assertEquals(4, details.count()) - assertEquals("Unit", details.elementAt(0).name) + assertEquals("internal", details.elementAt(0).name) assertEquals("final", details.elementAt(1).name) - assertEquals("internal", details.elementAt(2).name) - with(details.elementAt(3)) { + with(details.elementAt(2)) { assertEquals("x", name) assertEquals(DocumentationNode.Kind.Parameter, kind) assertEquals("parameter", content.summary.toTestString()) @@ -129,7 +129,7 @@ Documentation""", content.description.toTestString()) assertTrue(members.none()) assertTrue(links.none()) } - + assertEquals("Unit", details.elementAt(3).name) assertTrue(members.none()) assertTrue(links.none()) } diff --git a/test/src/model/LinkTest.kt b/test/src/model/LinkTest.kt new file mode 100644 index 00000000..151d2696 --- /dev/null +++ b/test/src/model/LinkTest.kt @@ -0,0 +1,48 @@ +package org.jetbrains.dokka.tests + +import org.junit.Test +import kotlin.test.* +import org.jetbrains.dokka.* + +public class LinkTest { + Test fun linkToSelf() { + verifyModel("test/data/links/linkToSelf.kt") { model -> + with(model.members.single().members.single()) { + assertEquals("Foo", name) + assertEquals(DocumentationNode.Kind.Class, kind) + assertEquals("This is link to [Foo -> Class:Foo]", content.summary.toTestString()) + } + } + } + + Test fun linkToMember() { + verifyModel("test/data/links/linkToMember.kt") { model -> + with(model.members.single().members.single()) { + assertEquals("Foo", name) + assertEquals(DocumentationNode.Kind.Class, kind) + assertEquals("This is link to [member -> Function:member]", content.summary.toTestString()) + } + } + } + + Test fun linkToQualifiedMember() { + verifyModel("test/data/links/linkToQualifiedMember.kt") { model -> + with(model.members.single().members.single()) { + assertEquals("Foo", name) + assertEquals(DocumentationNode.Kind.Class, kind) + assertEquals("This is link to [Foo.member -> Function:member]", content.summary.toTestString()) + } + } + } + + Test fun linkToParam() { + verifyModel("test/data/links/linkToParam.kt") { model -> + with(model.members.single().members.single()) { + assertEquals("Foo", name) + assertEquals(DocumentationNode.Kind.Function, kind) + assertEquals("This is link to [param -> Parameter:param]", content.summary.toTestString()) + } + } + } + +}
\ No newline at end of file diff --git a/test/src/model/PropertyTest.kt b/test/src/model/PropertyTest.kt index 93d81769..7cd287a0 100644 --- a/test/src/model/PropertyTest.kt +++ b/test/src/model/PropertyTest.kt @@ -40,7 +40,7 @@ public class PropertyTest { assertEquals("String", detail(DocumentationNode.Kind.Type).name) assertTrue(links.none()) with(members.single()) { - assertEquals("<get-property>", name) + assertEquals("<get>", name) assertEquals(DocumentationNode.Kind.Function, kind) assertEquals(Content.Empty, content) assertEquals("String", detail(DocumentationNode.Kind.Type).name) @@ -66,7 +66,7 @@ public class PropertyTest { assertEquals(2, members.count()) with(members.elementAt(0)) { - assertEquals("<get-property>", name) + assertEquals("<get>", name) assertEquals(DocumentationNode.Kind.Function, kind) assertEquals(Content.Empty, content) val get_modifiers = details(DocumentationNode.Kind.Modifier).map { it.name } |