aboutsummaryrefslogtreecommitdiff
path: root/plugins/kotlin-as-java/src/test/kotlin/KotlinAsJavaSignatureTest.kt
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/kotlin-as-java/src/test/kotlin/KotlinAsJavaSignatureTest.kt')
-rw-r--r--plugins/kotlin-as-java/src/test/kotlin/KotlinAsJavaSignatureTest.kt137
1 files changed, 0 insertions, 137 deletions
diff --git a/plugins/kotlin-as-java/src/test/kotlin/KotlinAsJavaSignatureTest.kt b/plugins/kotlin-as-java/src/test/kotlin/KotlinAsJavaSignatureTest.kt
deleted file mode 100644
index 25312810..00000000
--- a/plugins/kotlin-as-java/src/test/kotlin/KotlinAsJavaSignatureTest.kt
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-package kotlinAsJavaPlugin
-
-import org.jetbrains.dokka.DokkaConfiguration
-import org.jetbrains.dokka.base.testApi.testRunner.BaseAbstractTest
-import org.jetbrains.dokka.jdk
-import signatures.firstSignature
-import signatures.renderedContent
-import signatures.signature
-import utils.*
-import kotlin.test.Test
-
-class KotlinAsJavaSignatureTest : BaseAbstractTest() {
-
- private val configuration = dokkaConfiguration {
- sourceSets {
- sourceSet {
- sourceRoots = listOf("src/")
- externalDocumentationLinks = listOf(
- DokkaConfiguration.ExternalDocumentationLink.jdk(8),
- stdlibExternalDocumentationLink
- )
- classpath = listOfNotNull(jvmStdlibPath)
- }
- }
- }
-
- @Suppress("SameParameterValue")
- private fun source(signature: String) =
- """
- |/src/main/kotlin/kotlinAsJavaPlugin/Test.kt
- |package kotlinAsJavaPlugin
- |
- | $signature
- """.trimIndent()
-
- @Test
- fun `fun with definitely non-nullable types as java`() {
- val source = source("fun <T> elvisLike(x: T, y: T & Any): T & Any = x ?: y")
- val writerPlugin = TestOutputWriterPlugin()
-
- testInline(
- source,
- configuration,
- pluginOverrides = listOf(writerPlugin)
- ) {
- renderingStage = { _, _ ->
- val signature = writerPlugin.writer.renderedContent("root/kotlinAsJavaPlugin/-test-kt/elvis-like.html").firstSignature()
- signature.match(
- "public final static ", Span("T"), A("elvisLike"),
- "<T extends ", A("Any"), ">(",
- Span(
- Span(Span(), " x, "),
- Span(Span(), " y")
- ),
- ")",
- ignoreSpanWithTokenStyle = true
- )
- }
- }
- }
-
- @Test
- fun `should display annotations`() {
- val writerPlugin = TestOutputWriterPlugin()
-
- testInline(
- """
- |/src/main/kotlin/kotlinAsJavaPlugin/Test.kt
- |package kotlinAsJavaPlugin
- |
- |@MustBeDocumented
- |annotation class OnClass
- |
- |@MustBeDocumented
- |annotation class OnMethod
- |
- |@MustBeDocumented
- |annotation class OnParameter
- |
- |@Target(AnnotationTarget.TYPE)
- |@MustBeDocumented
- |annotation class OnType
- |
- |@Target(AnnotationTarget.TYPE_PARAMETER)
- |@MustBeDocumented
- |annotation class OnTypeParameter
- |
- |@OnClass
- |class Clazz<@OnTypeParameter T : @OnType Any> {
- | @OnMethod
- | fun <@OnTypeParameter T : @OnType Any> withParams(@OnParameter str1: String, str2: String): Boolean {
- | return str1 == str2
- | }
- |}
- """.trimIndent(),
- configuration,
- pluginOverrides = listOf(writerPlugin)
- ) {
- renderingStage = { _, _ ->
- val signatures = writerPlugin.writer
- .renderedContent("root/kotlinAsJavaPlugin/-clazz/index.html")
- .signature()
-
- val classSignature = signatures[0]
- classSignature.match(
- Div(Div("@", A("OnClass"), "()")),
- "public final class ", A("Clazz"),
- // <@OnTypeParameter() T extends @OnType() Object>
- "<", Span("@", A("OnTypeParameter"), "() "), "T extends ", Span("@", A("OnType"), "() "), A("Object"), ">",
- ignoreSpanWithTokenStyle = true
- )
-
- val functionSignature = signatures[2]
- functionSignature.match(
- Div(Div("@", A("OnMethod"), "()")),
- "public final ", A("Boolean"), A("withParams"),
- // <@OnTypeParameter() T extends @OnType() Object>
- "<", Span("@", A("OnTypeParameter"), "() "), "T extends ", Span("@", A("OnType"), "() "), A("Any"), ">(",
- Span(
- Span(
- Span("@", A("OnParameter"), "() "),
- A("String"), "str1, "
- ),
- Span(
- A("String"), "str2"
- )
- ), ")",
- ignoreSpanWithTokenStyle = true
- )
- }
- }
- }
-}