aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorDmitry Jemerov <yole@jetbrains.com>2015-02-25 20:06:16 +0100
committerDmitry Jemerov <yole@jetbrains.com>2015-02-25 20:06:16 +0100
commitfc70184fee01430ed9c673336026c6ede8bff5f3 (patch)
tree3c74d1b878ebd55d2252f165eee21f01cc9d8ade /test
parent184a24c93e0939c5a9ceb10cf3c3992f11165219 (diff)
downloaddokka-fc70184fee01430ed9c673336026c6ede8bff5f3.tar.gz
dokka-fc70184fee01430ed9c673336026c6ede8bff5f3.tar.bz2
dokka-fc70184fee01430ed9c673336026c6ede8bff5f3.zip
working test for cross-language links in documentation (Kotlin class extends Java class)
Diffstat (limited to 'test')
-rw-r--r--test/data/format/crossLanguage/kotlinExtendsJava.html26
-rw-r--r--test/data/format/crossLanguage/kotlinExtendsJava/Bar.kt6
-rw-r--r--test/data/format/crossLanguage/kotlinExtendsJava/test/Foo.java6
-rw-r--r--test/src/TestAPI.kt4
-rw-r--r--test/src/format/HtmlFormatTest.kt6
5 files changed, 47 insertions, 1 deletions
diff --git a/test/data/format/crossLanguage/kotlinExtendsJava.html b/test/data/format/crossLanguage/kotlinExtendsJava.html
new file mode 100644
index 00000000..49a9ff8f
--- /dev/null
+++ b/test/data/format/crossLanguage/kotlinExtendsJava.html
@@ -0,0 +1,26 @@
+<HTML>
+<HEAD>
+<title>test / test.Bar</title>
+</HEAD>
+<BODY>
+<a href="test/index">test</a>&nbsp;/&nbsp;<a href="test/test/index">test</a>&nbsp;/&nbsp;<a href="test/test/-bar/index">Bar</a><br/>
+<br/>
+<h1>Bar</h1>
+<code><span class="keyword">class </span><span class="identifier">Bar</span><span class="symbol"> : </span><a href="test/test/-foo/index"><span class="identifier">Foo</span></a></code><br/>
+<p>See <a href="test/test/-foo/xyzzy">xyzzy</a></p>
+<br/>
+<br/>
+<h3>Constructors</h3>
+<table>
+<tbody>
+<tr>
+<td>
+<a href="test/test/-bar/-init-">&lt;init&gt;</a></td>
+<td>
+<code><span class="keyword">public</span> <span class="identifier">Bar</span><span class="symbol">(</span><span class="symbol">)</span></code><p>See <a href="test/test/-foo/xyzzy">xyzzy</a></p>
+</td>
+</tr>
+</tbody>
+</table>
+</BODY>
+</HTML>
diff --git a/test/data/format/crossLanguage/kotlinExtendsJava/Bar.kt b/test/data/format/crossLanguage/kotlinExtendsJava/Bar.kt
new file mode 100644
index 00000000..102782f9
--- /dev/null
+++ b/test/data/format/crossLanguage/kotlinExtendsJava/Bar.kt
@@ -0,0 +1,6 @@
+package test
+
+/**
+ * See [xyzzy]
+ */
+class Bar(): Foo()
diff --git a/test/data/format/crossLanguage/kotlinExtendsJava/test/Foo.java b/test/data/format/crossLanguage/kotlinExtendsJava/test/Foo.java
new file mode 100644
index 00000000..7c143030
--- /dev/null
+++ b/test/data/format/crossLanguage/kotlinExtendsJava/test/Foo.java
@@ -0,0 +1,6 @@
+package test;
+
+public class Foo {
+ public void xyzzy() {
+ }
+}
diff --git a/test/src/TestAPI.kt b/test/src/TestAPI.kt
index 7c6a2e73..6fc83279 100644
--- a/test/src/TestAPI.kt
+++ b/test/src/TestAPI.kt
@@ -30,6 +30,7 @@ public fun verifyModel(vararg files: String, verifier: (DocumentationModule) ->
val stringRoot = PathManager.getResourceRoot(javaClass<String>(), "/java/lang/String.class")
addClasspath(File(stringRoot))
addSources(files.toList())
+ addClasspath(files.map { File(it)}.filter { it.isDirectory()} )
}
val options = DocumentationOptions(includeNonPublic = true, sourceLinks = listOf<SourceLinkDefinition>())
val documentation = buildDocumentationModule(environment, "test", options, logger = DokkaConsoleLogger)
@@ -48,7 +49,8 @@ public fun verifyOutput(path: String, outputExtension: String, outputGenerator:
verifyModel(path) {
val output = StringBuilder()
outputGenerator(it, output)
- val expectedOutput = File(path.replace(".kt", outputExtension).replace(".java", outputExtension)).readText()
+ val ext = outputExtension.trimLeading(".")
+ val expectedOutput = File(path.replaceAfterLast(".", ext, path + "." + ext)).readText()
assertEqualsIgnoringSeparators(expectedOutput, output.toString())
}
}
diff --git a/test/src/format/HtmlFormatTest.kt b/test/src/format/HtmlFormatTest.kt
index 85badf8e..c81b2d85 100644
--- a/test/src/format/HtmlFormatTest.kt
+++ b/test/src/format/HtmlFormatTest.kt
@@ -117,4 +117,10 @@ public class HtmlFormatTest {
htmlService.appendNodes(tempLocation, output, model.members.single().members.single { it.name == "Foo" }.members.filter { it.name == "foo" })
}
}
+
+ Test fun crossLanguageKotlinExtendsJava() {
+ verifyOutput("test/data/format/crossLanguage/kotlinExtendsJava", ".html") { model, output ->
+ htmlService.appendNodes(tempLocation, output, model.members.single().members.filter { it.name == "Bar" })
+ }
+ }
}