aboutsummaryrefslogtreecommitdiff
path: root/plugins/base/base-test-utils
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/base/base-test-utils')
-rw-r--r--plugins/base/base-test-utils/api/base-test-utils.api199
-rw-r--r--plugins/base/base-test-utils/build.gradle.kts34
-rw-r--r--plugins/base/base-test-utils/src/main/kotlin/renderers/JsoupUtils.kt79
-rw-r--r--plugins/base/base-test-utils/src/main/kotlin/renderers/RenderingOnlyTestBase.kt12
-rw-r--r--plugins/base/base-test-utils/src/main/kotlin/renderers/SignatureUtils.kt23
-rw-r--r--plugins/base/base-test-utils/src/main/kotlin/renderers/TestPage.kt59
-rw-r--r--plugins/base/base-test-utils/src/main/kotlin/testRunner/baseTestApi.kt124
-rw-r--r--plugins/base/base-test-utils/src/main/kotlin/utils/TestOutputWriter.kt47
-rw-r--r--plugins/base/base-test-utils/src/main/kotlin/utils/assertHtmlEqualsIgnoringWhitespace.kt24
9 files changed, 0 insertions, 601 deletions
diff --git a/plugins/base/base-test-utils/api/base-test-utils.api b/plugins/base/base-test-utils/api/base-test-utils.api
deleted file mode 100644
index a6bdc192..00000000
--- a/plugins/base/base-test-utils/api/base-test-utils.api
+++ /dev/null
@@ -1,199 +0,0 @@
-public abstract class org/jetbrains/dokka/base/testApi/testRunner/BaseAbstractTest : org/jetbrains/dokka/testApi/testRunner/AbstractTest {
- public fun <init> ()V
- public fun <init> (Lorg/jetbrains/dokka/testApi/logger/TestLogger;)V
- public synthetic fun <init> (Lorg/jetbrains/dokka/testApi/logger/TestLogger;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
-}
-
-public final class org/jetbrains/dokka/base/testApi/testRunner/BaseDokkaTestGenerator : org/jetbrains/dokka/testApi/testRunner/DokkaTestGenerator {
- public fun <init> (Lorg/jetbrains/dokka/DokkaConfiguration;Lorg/jetbrains/dokka/utilities/DokkaLogger;Lorg/jetbrains/dokka/base/testApi/testRunner/BaseTestMethods;Ljava/util/List;)V
- public synthetic fun <init> (Lorg/jetbrains/dokka/DokkaConfiguration;Lorg/jetbrains/dokka/utilities/DokkaLogger;Lorg/jetbrains/dokka/base/testApi/testRunner/BaseTestMethods;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
- public fun generate ()V
-}
-
-public final class org/jetbrains/dokka/base/testApi/testRunner/BaseTestBuilder : org/jetbrains/dokka/testApi/testRunner/TestBuilder {
- public fun <init> ()V
- public fun build ()Lorg/jetbrains/dokka/base/testApi/testRunner/BaseTestMethods;
- public synthetic fun build ()Lorg/jetbrains/dokka/testApi/testRunner/TestMethods;
- public final fun getDocumentablesCreationStage ()Lkotlin/jvm/functions/Function1;
- public final fun getDocumentablesMergingStage ()Lkotlin/jvm/functions/Function1;
- public final fun getDocumentablesTransformationStage ()Lkotlin/jvm/functions/Function1;
- public final fun getPagesGenerationStage ()Lkotlin/jvm/functions/Function1;
- public final fun getPagesTransformationStage ()Lkotlin/jvm/functions/Function1;
- public final fun getPluginsSetupStage ()Lkotlin/jvm/functions/Function1;
- public final fun getPreMergeDocumentablesTransformationStage ()Lkotlin/jvm/functions/Function1;
- public final fun getRenderingStage ()Lkotlin/jvm/functions/Function2;
- public final fun getVerificationStage ()Lkotlin/jvm/functions/Function1;
- public final fun setDocumentablesCreationStage (Lkotlin/jvm/functions/Function1;)V
- public final fun setDocumentablesMergingStage (Lkotlin/jvm/functions/Function1;)V
- public final fun setDocumentablesTransformationStage (Lkotlin/jvm/functions/Function1;)V
- public final fun setPagesGenerationStage (Lkotlin/jvm/functions/Function1;)V
- public final fun setPagesTransformationStage (Lkotlin/jvm/functions/Function1;)V
- public final fun setPluginsSetupStage (Lkotlin/jvm/functions/Function1;)V
- public final fun setPreMergeDocumentablesTransformationStage (Lkotlin/jvm/functions/Function1;)V
- public final fun setRenderingStage (Lkotlin/jvm/functions/Function2;)V
- public final fun setVerificationStage (Lkotlin/jvm/functions/Function1;)V
-}
-
-public final class org/jetbrains/dokka/base/testApi/testRunner/BaseTestMethods : org/jetbrains/dokka/testApi/testRunner/CoreTestMethods {
- public fun <init> (Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;)V
- public final fun component1 ()Lkotlin/jvm/functions/Function1;
- public final fun component2 ()Lkotlin/jvm/functions/Function1;
- public final fun component3 ()Lkotlin/jvm/functions/Function1;
- public final fun component4 ()Lkotlin/jvm/functions/Function1;
- public final fun component5 ()Lkotlin/jvm/functions/Function1;
- public final fun component6 ()Lkotlin/jvm/functions/Function1;
- public final fun component7 ()Lkotlin/jvm/functions/Function1;
- public final fun component8 ()Lkotlin/jvm/functions/Function1;
- public final fun component9 ()Lkotlin/jvm/functions/Function2;
- public final fun copy (Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;)Lorg/jetbrains/dokka/base/testApi/testRunner/BaseTestMethods;
- public static synthetic fun copy$default (Lorg/jetbrains/dokka/base/testApi/testRunner/BaseTestMethods;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Lorg/jetbrains/dokka/base/testApi/testRunner/BaseTestMethods;
- public fun equals (Ljava/lang/Object;)Z
- public fun getDocumentablesCreationStage ()Lkotlin/jvm/functions/Function1;
- public final fun getDocumentablesFirstTransformationStep ()Lkotlin/jvm/functions/Function1;
- public fun getDocumentablesMergingStage ()Lkotlin/jvm/functions/Function1;
- public fun getDocumentablesTransformationStage ()Lkotlin/jvm/functions/Function1;
- public fun getPagesGenerationStage ()Lkotlin/jvm/functions/Function1;
- public fun getPagesTransformationStage ()Lkotlin/jvm/functions/Function1;
- public fun getPluginsSetupStage ()Lkotlin/jvm/functions/Function1;
- public fun getRenderingStage ()Lkotlin/jvm/functions/Function2;
- public fun getVerificationStage ()Lkotlin/jvm/functions/Function1;
- public fun hashCode ()I
- public fun toString ()Ljava/lang/String;
-}
-
-public final class renderers/RawTestPage : org/jetbrains/dokka/pages/RootPageNode, org/jetbrains/dokka/pages/ContentPage {
- public fun <init> (Lorg/jetbrains/dokka/pages/ContentNode;Ljava/lang/String;Ljava/util/Set;Ljava/util/List;Ljava/util/List;)V
- public synthetic fun <init> (Lorg/jetbrains/dokka/pages/ContentNode;Ljava/lang/String;Ljava/util/Set;Ljava/util/List;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
- public fun getChildren ()Ljava/util/List;
- public fun getContent ()Lorg/jetbrains/dokka/pages/ContentNode;
- public fun getDocumentable ()Lorg/jetbrains/dokka/model/Documentable;
- public fun getDri ()Ljava/util/Set;
- public fun getEmbeddedResources ()Ljava/util/List;
- public fun getName ()Ljava/lang/String;
- public synthetic fun modified (Ljava/lang/String;Ljava/util/List;)Lorg/jetbrains/dokka/pages/PageNode;
- public fun modified (Ljava/lang/String;Ljava/util/List;)Lorg/jetbrains/dokka/pages/RootPageNode;
- public fun modified (Ljava/lang/String;Lorg/jetbrains/dokka/pages/ContentNode;Ljava/util/Set;Ljava/util/List;Ljava/util/List;)Lorg/jetbrains/dokka/pages/ContentPage;
-}
-
-public abstract class renderers/RenderingOnlyTestBase {
- public fun <init> ()V
- public abstract fun getContext ()Lorg/jetbrains/dokka/testApi/context/MockContext;
- public abstract fun getRenderedContent ()Ljava/lang/Object;
-}
-
-public final class renderers/TestPageKt {
- public static final fun testPage (Lkotlin/jvm/functions/Function1;)Lrenderers/RawTestPage;
-}
-
-public final class signatures/Parameter : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class signatures/Parameters : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class signatures/SignatureUtilsKt {
- public static final fun firstSignature (Lorg/jsoup/nodes/Element;)Lorg/jsoup/nodes/Element;
- public static final fun lastSignature (Lorg/jsoup/nodes/Element;)Lorg/jsoup/nodes/Element;
- public static final fun renderedContent (Lutils/TestOutputWriter;Ljava/lang/String;)Lorg/jsoup/nodes/Element;
- public static synthetic fun renderedContent$default (Lutils/TestOutputWriter;Ljava/lang/String;ILjava/lang/Object;)Lorg/jsoup/nodes/Element;
- public static final fun signature (Lorg/jsoup/nodes/Element;)Lorg/jsoup/select/Elements;
- public static final fun tab (Lorg/jsoup/nodes/Element;Ljava/lang/String;)Lorg/jsoup/select/Elements;
-}
-
-public final class utils/A : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/AssertHtmlEqualsIgnoringWhitespaceKt {
- public static final fun assertHtmlEqualsIgnoringWhitespace (Ljava/lang/String;Ljava/lang/String;)V
-}
-
-public final class utils/B : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/BlockQuote : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/Br : utils/Tag {
- public static final field INSTANCE Lutils/Br;
-}
-
-public final class utils/Dd : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/Div : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/Dl : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/Dt : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/I : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/JsoupUtilsKt {
- public static final fun match (Lorg/jsoup/nodes/Element;[Ljava/lang/Object;Z)V
- public static synthetic fun match$default (Lorg/jsoup/nodes/Element;[Ljava/lang/Object;ZILjava/lang/Object;)V
- public static final fun withClasses (Lutils/Tag;[Ljava/lang/String;)Lutils/Tag;
-}
-
-public final class utils/P : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/STRIKE : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/Span : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public class utils/Tag {
- public fun <init> (Ljava/lang/String;[Ljava/lang/Object;Ljava/util/List;)V
- public synthetic fun <init> (Ljava/lang/String;[Ljava/lang/Object;Ljava/util/List;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
- public final fun getExpectedClasses ()Ljava/util/List;
- public final fun getMatchers ()[Ljava/lang/Object;
- public final fun getName ()Ljava/lang/String;
-}
-
-public final class utils/TestOutputWriter : org/jetbrains/dokka/base/renderers/OutputWriter {
- public fun <init> ()V
- public fun <init> (Z)V
- public synthetic fun <init> (ZILkotlin/jvm/internal/DefaultConstructorMarker;)V
- public final fun getContents ()Ljava/util/Map;
- public fun write (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
- public fun writeResources (Ljava/lang/String;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-}
-
-public final class utils/TestOutputWriterPlugin : org/jetbrains/dokka/plugability/DokkaPlugin {
- public fun <init> ()V
- public fun <init> (Z)V
- public synthetic fun <init> (ZILkotlin/jvm/internal/DefaultConstructorMarker;)V
- public final fun getTestWriter ()Lorg/jetbrains/dokka/plugability/Extension;
- public final fun getWriter ()Lutils/TestOutputWriter;
-}
-
-public final class utils/U : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/Var : utils/Tag {
- public fun <init> ([Ljava/lang/Object;)V
-}
-
-public final class utils/Wbr : utils/Tag {
- public static final field INSTANCE Lutils/Wbr;
-}
-
diff --git a/plugins/base/base-test-utils/build.gradle.kts b/plugins/base/base-test-utils/build.gradle.kts
deleted file mode 100644
index 454deee6..00000000
--- a/plugins/base/base-test-utils/build.gradle.kts
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-import org.jetbrains.registerDokkaArtifactPublication
-
-plugins {
- id("org.jetbrains.conventions.kotlin-jvm")
- id("org.jetbrains.conventions.maven-publish")
-}
-
-dependencies {
- compileOnly(projects.core)
- compileOnly(projects.plugins.base)
-
- api(projects.subprojects.analysisKotlinApi)
-
- // TODO [beresnev] analysis switcher
- //runtimeOnly(project(path = ":subprojects:analysis-kotlin-symbols", configuration = "shadow"))
- runtimeOnly(project(path = ":subprojects:analysis-kotlin-descriptors", configuration = "shadow"))
-
- implementation(kotlin("reflect"))
- implementation(libs.jsoup)
-
- implementation(kotlin("test"))
- implementation(projects.core.testApi)
-
- testImplementation(kotlin("test"))
- testImplementation(projects.core.testApi)
-}
-
-registerDokkaArtifactPublication("dokkaBaseTestUtils") {
- artifactId = "dokka-base-test-utils"
-}
diff --git a/plugins/base/base-test-utils/src/main/kotlin/renderers/JsoupUtils.kt b/plugins/base/base-test-utils/src/main/kotlin/renderers/JsoupUtils.kt
deleted file mode 100644
index fcd73ff0..00000000
--- a/plugins/base/base-test-utils/src/main/kotlin/renderers/JsoupUtils.kt
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-package utils
-
-import org.jsoup.nodes.Element
-import org.jsoup.nodes.Node
-import org.jsoup.nodes.TextNode
-
-public fun Element.match(vararg matchers: Any, ignoreSpanWithTokenStyle:Boolean = false): Unit =
- childNodes()
- .let { list ->
- if(ignoreSpanWithTokenStyle) {
- list
- .filterNot { it is Element && it.tagName() == "span" && it.attr("class").startsWith("token ") && it.childNodeSize() == 0}
- .map { if(it is Element && it.tagName() == "span"
- && it.attr("class").startsWith("token ")
- && it.childNodeSize() == 1) it.childNode(0) else it }
- .uniteConsecutiveTextNodes()
- } else list
- }
- .filter { (it !is TextNode || it.text().isNotBlank())}
- .let { it.drop(it.size - matchers.size) }
- .zip(matchers)
- .forEach { (n, m) -> m.accepts(n, ignoreSpan = ignoreSpanWithTokenStyle) }
-
-public open class Tag(
- public val name: String,
- public vararg val matchers: Any,
- public val expectedClasses: List<String> = emptyList()
-)
-public class Div(vararg matchers: Any) : Tag("div", *matchers)
-public class P(vararg matchers: Any) : Tag("p", *matchers)
-public class Span(vararg matchers: Any) : Tag("span", *matchers)
-public class A(vararg matchers: Any) : Tag("a", *matchers)
-public class B(vararg matchers: Any) : Tag("b", *matchers)
-public class I(vararg matchers: Any) : Tag("i", *matchers)
-public class STRIKE(vararg matchers: Any) : Tag("strike", *matchers)
-public class BlockQuote(vararg matchers: Any) : Tag("blockquote", *matchers)
-public class Dl(vararg matchers: Any) : Tag("dl", *matchers)
-public class Dt(vararg matchers: Any) : Tag("dt", *matchers)
-public class Dd(vararg matchers: Any) : Tag("dd", *matchers)
-public class Var(vararg matchers: Any) : Tag("var", *matchers)
-public class U(vararg matchers: Any) : Tag("u", *matchers)
-public object Wbr : Tag("wbr")
-public object Br : Tag("br")
-
-public fun Tag.withClasses(vararg classes: String): Tag = Tag(name, *matchers, expectedClasses = classes.toList())
-
-private fun Any.accepts(n: Node, ignoreSpan:Boolean = true) {
- when (this) {
- is String -> assert(n is TextNode && n.text().trim() == this.trim()) { "\"$this\" expected but found: $n" }
- is Tag -> {
- check(n is Element) { "Expected node to be Element: $n" }
- assert(n.tagName() == name) { "Tag \"$name\" expected but found: \"$n\"" }
- expectedClasses.forEach {
- assert(n.hasClass(it)) { "Expected to find class \"$it\" for tag \"$name\", found: ${n.classNames()}" }
- }
- if (matchers.isNotEmpty()) n.match(*matchers, ignoreSpanWithTokenStyle = ignoreSpan)
- }
- else -> throw IllegalArgumentException("$this is not proper matcher")
- }
-}
-
-private fun List<Node>.uniteConsecutiveTextNodes(): MutableList<Node> {
- val resList = mutableListOf<Node>()
- var acc = StringBuilder()
- forEachIndexed { index, item ->
- if (item is TextNode) {
- acc.append(item.text())
- if (!(index + 1 < size && this[index + 1] is TextNode)) {
- resList.add(TextNode(acc.toString()))
- acc = StringBuilder()
- }
- } else resList.add(item)
- }
- return resList
- }
diff --git a/plugins/base/base-test-utils/src/main/kotlin/renderers/RenderingOnlyTestBase.kt b/plugins/base/base-test-utils/src/main/kotlin/renderers/RenderingOnlyTestBase.kt
deleted file mode 100644
index d2ff3ad4..00000000
--- a/plugins/base/base-test-utils/src/main/kotlin/renderers/RenderingOnlyTestBase.kt
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-package renderers
-
-import org.jetbrains.dokka.testApi.context.MockContext
-
-public abstract class RenderingOnlyTestBase<T> {
- public abstract val context: MockContext
- public abstract val renderedContent: T
-}
diff --git a/plugins/base/base-test-utils/src/main/kotlin/renderers/SignatureUtils.kt b/plugins/base/base-test-utils/src/main/kotlin/renderers/SignatureUtils.kt
deleted file mode 100644
index ecbe809b..00000000
--- a/plugins/base/base-test-utils/src/main/kotlin/renderers/SignatureUtils.kt
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-package signatures
-
-import org.jsoup.Jsoup
-import org.jsoup.nodes.Element
-import org.jsoup.select.Elements
-import utils.Tag
-import utils.TestOutputWriter
-
-public fun TestOutputWriter.renderedContent(path: String = "root/example.html"): Element =
- contents.getValue(path).let { Jsoup.parse(it) }.select("#content")
- .single()
-
-public fun Element.signature(): Elements = select("div.symbol.monospace")
-public fun Element.tab(tabName: String): Elements = select("div[data-togglable=\"$tabName\"]")
-public fun Element.firstSignature(): Element = signature().first() ?: throw NoSuchElementException("No signature found")
-public fun Element.lastSignature(): Element = signature().last() ?: throw NoSuchElementException("No signature found")
-
-public class Parameters(vararg matchers: Any) : Tag("span", *matchers, expectedClasses = listOf("parameters"))
-public class Parameter(vararg matchers: Any) : Tag("span", *matchers, expectedClasses = listOf("parameter"))
diff --git a/plugins/base/base-test-utils/src/main/kotlin/renderers/TestPage.kt b/plugins/base/base-test-utils/src/main/kotlin/renderers/TestPage.kt
deleted file mode 100644
index 6fb484bf..00000000
--- a/plugins/base/base-test-utils/src/main/kotlin/renderers/TestPage.kt
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-package renderers
-
-import org.jetbrains.dokka.DokkaConfiguration
-import org.jetbrains.dokka.base.signatures.KotlinSignatureProvider
-import org.jetbrains.dokka.base.transformers.pages.comments.CommentsToContentConverter
-import org.jetbrains.dokka.base.translators.documentables.PageContentBuilder
-import org.jetbrains.dokka.links.DRI
-import org.jetbrains.dokka.model.doc.DocTag
-import org.jetbrains.dokka.model.properties.PropertyContainer
-import org.jetbrains.dokka.pages.*
-import org.jetbrains.dokka.utilities.DokkaConsoleLogger
-import org.jetbrains.dokka.utilities.LoggingLevel
-
-public fun testPage(callback: PageContentBuilder.DocumentableContentBuilder.() -> Unit): RawTestPage {
- val content = PageContentBuilder(
- EmptyCommentConverter,
- KotlinSignatureProvider(EmptyCommentConverter, DokkaConsoleLogger(LoggingLevel.DEBUG)),
- DokkaConsoleLogger(LoggingLevel.DEBUG)
- ).contentFor(
- DRI.topLevel,
- emptySet(),
- block = callback
- )
-
- return RawTestPage(content)
-}
-
-public class RawTestPage(
- override val content: ContentNode,
- override val name: String = "testPage",
- override val dri: Set<DRI> = setOf(DRI.topLevel),
- override val embeddedResources: List<String> = emptyList(),
- override val children: List<PageNode> = emptyList(),
-): RootPageNode(), ContentPage {
- override fun modified(
- name: String,
- content: ContentNode,
- dri: Set<DRI>,
- embeddedResources: List<String>,
- children: List<PageNode>
- ): ContentPage = this
-
- override fun modified(name: String, children: List<PageNode>): RootPageNode = this
-
-}
-
-internal object EmptyCommentConverter : CommentsToContentConverter {
- override fun buildContent(
- docTag: DocTag,
- dci: DCI,
- sourceSets: Set<DokkaConfiguration.DokkaSourceSet>,
- styles: Set<Style>,
- extras: PropertyContainer<ContentNode>
- ): List<ContentNode> = emptyList()
-}
diff --git a/plugins/base/base-test-utils/src/main/kotlin/testRunner/baseTestApi.kt b/plugins/base/base-test-utils/src/main/kotlin/testRunner/baseTestApi.kt
deleted file mode 100644
index 3dc0e54b..00000000
--- a/plugins/base/base-test-utils/src/main/kotlin/testRunner/baseTestApi.kt
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-package org.jetbrains.dokka.base.testApi.testRunner
-
-import org.jetbrains.dokka.CoreExtensions
-import org.jetbrains.dokka.DokkaConfiguration
-import org.jetbrains.dokka.DokkaGenerator
-import org.jetbrains.dokka.base.generation.SingleModuleGeneration
-import org.jetbrains.dokka.model.DModule
-import org.jetbrains.dokka.pages.RootPageNode
-import org.jetbrains.dokka.plugability.DokkaContext
-import org.jetbrains.dokka.plugability.DokkaPlugin
-import org.jetbrains.dokka.testApi.logger.TestLogger
-import org.jetbrains.dokka.testApi.testRunner.AbstractTest
-import org.jetbrains.dokka.testApi.testRunner.CoreTestMethods
-import org.jetbrains.dokka.testApi.testRunner.DokkaTestGenerator
-import org.jetbrains.dokka.testApi.testRunner.TestBuilder
-import org.jetbrains.dokka.utilities.DokkaConsoleLogger
-import org.jetbrains.dokka.utilities.DokkaLogger
-import org.jetbrains.dokka.utilities.LoggingLevel
-
-public class BaseDokkaTestGenerator(
- configuration: DokkaConfiguration,
- logger: DokkaLogger,
- testMethods: BaseTestMethods,
- additionalPlugins: List<DokkaPlugin> = emptyList()
-) : DokkaTestGenerator<BaseTestMethods>(configuration, logger, testMethods, additionalPlugins) {
-
- override fun generate() {
- with(testMethods) {
- val dokkaGenerator = DokkaGenerator(configuration, logger)
-
- val context =
- dokkaGenerator.initializePlugins(configuration, logger, additionalPlugins)
- pluginsSetupStage(context)
-
- val singleModuleGeneration = context.single(CoreExtensions.generation) as SingleModuleGeneration
-
- val modulesFromPlatforms = singleModuleGeneration.createDocumentationModels()
- documentablesCreationStage(modulesFromPlatforms)
-
- verificationStage { singleModuleGeneration.validityCheck(context) }
-
- val filteredModules = singleModuleGeneration.transformDocumentationModelBeforeMerge(modulesFromPlatforms)
- documentablesFirstTransformationStep(filteredModules)
-
- val documentationModel = singleModuleGeneration.mergeDocumentationModels(filteredModules)
- documentablesMergingStage(documentationModel!!)
-
- val transformedDocumentation = singleModuleGeneration.transformDocumentationModelAfterMerge(documentationModel)
- documentablesTransformationStage(transformedDocumentation)
-
- val pages = singleModuleGeneration.createPages(transformedDocumentation)
- pagesGenerationStage(pages)
-
- val transformedPages = singleModuleGeneration.transformPages(pages)
- pagesTransformationStage(transformedPages)
-
- singleModuleGeneration.render(transformedPages)
- renderingStage(transformedPages, context)
-
- singleModuleGeneration.runPostActions()
-
- singleModuleGeneration.reportAfterRendering()
- }
- }
-}
-
-public data class BaseTestMethods(
- override val pluginsSetupStage: (DokkaContext) -> Unit,
- override val verificationStage: (() -> Unit) -> Unit,
- override val documentablesCreationStage: (List<DModule>) -> Unit,
- val documentablesFirstTransformationStep: (List<DModule>) -> Unit,
- override val documentablesMergingStage: (DModule) -> Unit,
- override val documentablesTransformationStage: (DModule) -> Unit,
- override val pagesGenerationStage: (RootPageNode) -> Unit,
- override val pagesTransformationStage: (RootPageNode) -> Unit,
- override val renderingStage: (RootPageNode, DokkaContext) -> Unit
-) : CoreTestMethods(
- pluginsSetupStage,
- verificationStage,
- documentablesCreationStage,
- documentablesMergingStage,
- documentablesTransformationStage,
- pagesGenerationStage,
- pagesTransformationStage,
- renderingStage,
-)
-
-public class BaseTestBuilder : TestBuilder<BaseTestMethods>() {
- public var pluginsSetupStage: (DokkaContext) -> Unit = {}
- public var verificationStage: (() -> Unit) -> Unit = {}
- public var documentablesCreationStage: (List<DModule>) -> Unit = {}
- public var preMergeDocumentablesTransformationStage: (List<DModule>) -> Unit = {}
- public var documentablesMergingStage: (DModule) -> Unit = {}
- public var documentablesTransformationStage: (DModule) -> Unit = {}
- public var pagesGenerationStage: (RootPageNode) -> Unit = {}
- public var pagesTransformationStage: (RootPageNode) -> Unit = {}
- public var renderingStage: (RootPageNode, DokkaContext) -> Unit = { _, _ -> }
-
- override fun build(): BaseTestMethods {
- return BaseTestMethods(
- pluginsSetupStage,
- verificationStage,
- documentablesCreationStage,
- preMergeDocumentablesTransformationStage,
- documentablesMergingStage,
- documentablesTransformationStage,
- pagesGenerationStage,
- pagesTransformationStage,
- renderingStage
- )
- }
-}
-
-public abstract class BaseAbstractTest(
- logger: TestLogger = TestLogger(DokkaConsoleLogger(LoggingLevel.DEBUG))
-) : AbstractTest<BaseTestMethods, BaseTestBuilder, BaseDokkaTestGenerator>(
- ::BaseTestBuilder,
- ::BaseDokkaTestGenerator,
- logger,
-)
diff --git a/plugins/base/base-test-utils/src/main/kotlin/utils/TestOutputWriter.kt b/plugins/base/base-test-utils/src/main/kotlin/utils/TestOutputWriter.kt
deleted file mode 100644
index 089a94ca..00000000
--- a/plugins/base/base-test-utils/src/main/kotlin/utils/TestOutputWriter.kt
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-package utils
-
-import org.jetbrains.dokka.base.DokkaBase
-import org.jetbrains.dokka.base.renderers.OutputWriter
-import org.jetbrains.dokka.plugability.DokkaPlugin
-import org.jetbrains.dokka.plugability.DokkaPluginApiPreview
-import org.jetbrains.dokka.plugability.Extension
-import org.jetbrains.dokka.plugability.PluginApiPreviewAcknowledgement
-import java.util.*
-
-public class TestOutputWriterPlugin(failOnOverwrite: Boolean = true) : DokkaPlugin() {
- public val writer: TestOutputWriter = TestOutputWriter(failOnOverwrite)
-
- private val dokkaBase by lazy { plugin<DokkaBase>() }
-
- public val testWriter: Extension<OutputWriter, *, *> by extending {
- (dokkaBase.outputWriter
- with writer
- override dokkaBase.fileWriter)
- }
-
- @OptIn(DokkaPluginApiPreview::class)
- override fun pluginApiPreviewAcknowledgement(): PluginApiPreviewAcknowledgement =
- PluginApiPreviewAcknowledgement
-}
-
-public class TestOutputWriter(
- private val failOnOverwrite: Boolean = true
-) : OutputWriter {
- public val contents: Map<String, String> get() = _contents
- private val _contents = Collections.synchronizedMap(mutableMapOf<String, String>())
-
- override suspend fun write(path: String, text: String, ext: String) {
- val fullPath = "$path$ext"
- _contents.putIfAbsent(fullPath, text)?.also {
- if (failOnOverwrite) throw AssertionError("File $fullPath is being overwritten.")
- }
- }
-
- override suspend fun writeResources(pathFrom: String, pathTo: String) {
- write(pathTo, "*** content of $pathFrom ***", "")
- }
-}
diff --git a/plugins/base/base-test-utils/src/main/kotlin/utils/assertHtmlEqualsIgnoringWhitespace.kt b/plugins/base/base-test-utils/src/main/kotlin/utils/assertHtmlEqualsIgnoringWhitespace.kt
deleted file mode 100644
index 207ebb8a..00000000
--- a/plugins/base/base-test-utils/src/main/kotlin/utils/assertHtmlEqualsIgnoringWhitespace.kt
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-package utils
-
-import org.jsoup.Jsoup
-import org.jsoup.nodes.Document
-import kotlin.test.assertEquals
-
-/**
- * Parses it using JSOUP, trims whitespace at the end of the line and asserts if they are equal
- * parsing is required to unify the formatting
- */
-public fun assertHtmlEqualsIgnoringWhitespace(expected: String, actual: String) {
- val ignoreFormattingSettings = Document.OutputSettings().indentAmount(0).outline(true)
- assertEquals(
- Jsoup.parse(expected).outputSettings(ignoreFormattingSettings).outerHtml().trimSpacesAtTheEndOfLine(),
- Jsoup.parse(actual).outputSettings(ignoreFormattingSettings).outerHtml().trimSpacesAtTheEndOfLine()
- )
-}
-
-private fun String.trimSpacesAtTheEndOfLine(): String =
- replace(" \n", "\n")