diff options
author | vmishenev <vad-mishenev@yandex.ru> | 2021-10-14 18:54:56 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-14 18:54:56 +0300 |
commit | de5b8cb414023e36fa3c660b292bcc5835634b34 (patch) | |
tree | 94c0e486c678b134c63cc4aca4c78263f38ef554 /plugins/base/src/test/kotlin | |
parent | bc68cbfb1e2644498559016889b838a7b2836e41 (diff) | |
download | dokka-de5b8cb414023e36fa3c660b292bcc5835634b34.tar.gz dokka-de5b8cb414023e36fa3c660b292bcc5835634b34.tar.bz2 dokka-de5b8cb414023e36fa3c660b292bcc5835634b34.zip |
Add keywords `expect` and `actual` in signatures (#2182)
Diffstat (limited to 'plugins/base/src/test/kotlin')
-rw-r--r-- | plugins/base/src/test/kotlin/signatures/SignatureTest.kt | 67 |
1 files changed, 65 insertions, 2 deletions
diff --git a/plugins/base/src/test/kotlin/signatures/SignatureTest.kt b/plugins/base/src/test/kotlin/signatures/SignatureTest.kt index d8b23d77..9ca6a5db 100644 --- a/plugins/base/src/test/kotlin/signatures/SignatureTest.kt +++ b/plugins/base/src/test/kotlin/signatures/SignatureTest.kt @@ -410,6 +410,63 @@ class SignatureTest : BaseAbstractTest() { } @Test + fun `actual fun`() { + + val configuration = dokkaConfiguration { + moduleName = "test" + sourceSets { + sourceSet { + name = "common" + sourceRoots = listOf("src/main/kotlin/common/Test.kt") + classpath = listOf(commonStdlibPath!!) + externalDocumentationLinks = listOf(stdlibExternalDocumentationLink) + } + sourceSet { + name = "jvm" + dependentSourceSets = setOf(DokkaSourceSetID("test", "common")) + sourceRoots = listOf("src/main/kotlin/jvm/Test.kt") + classpath = listOf(commonStdlibPath!!) + externalDocumentationLinks = listOf(stdlibExternalDocumentationLink) + } + } + } + + val writerPlugin = TestOutputWriterPlugin() + + testInline( + """ + |/src/main/kotlin/common/Test.kt + |package example + | + |expect fun simpleFun(): String + | + |/src/main/kotlin/jvm/Test.kt + |package example + | + |actual fun simpleFun(): String = "Celebrimbor" + | + """.trimMargin(), + configuration, + pluginOverrides = listOf(writerPlugin) + ) { + renderingStage = { _, _ -> + val signatures = writerPlugin.writer.renderedContent("test/example/simple-fun.html").signature().toList() + + signatures[0].match( + "expect fun ", A("simpleFun"), + "(): ", A("String"), Span(), + ignoreSpanWithTokenStyle = true + ) + signatures[1].match( + "actual fun ", A("simpleFun"), + "(): ", A("String"), Span(), + ignoreSpanWithTokenStyle = true + ) + } + } + } + + @Test fun `type with an actual typealias`() { val configuration = dokkaConfiguration { @@ -451,8 +508,14 @@ class SignatureTest : BaseAbstractTest() { pluginOverrides = listOf(writerPlugin) ) { renderingStage = { _, _ -> - writerPlugin.writer.renderedContent("test/example/-foo/index.html").signature().toList()[1].match( - "typealias ", A("Foo"), " = ", A("Bar"), Span(), + val signatures = writerPlugin.writer.renderedContent("test/example/-foo/index.html").signature().toList() + + signatures[0].match( + "expect class ", A("Foo"), Span(), + ignoreSpanWithTokenStyle = true + ) + signatures[1].match( + "actual typealias ", A("Foo"), " = ", A("Bar"), Span(), ignoreSpanWithTokenStyle = true ) } |