aboutsummaryrefslogtreecommitdiff
path: root/dokka-subprojects/plugin-gfm/src/test/kotlin/renderers/gfm/GfmRenderingOnlyTestBase.kt
blob: 9080a4fdd0a8f5db1b3d7aaa06594dcee8489a3c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/*
 * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
 */

package renderers.gfm

import org.jetbrains.dokka.DokkaConfigurationImpl
import org.jetbrains.dokka.base.DokkaBase
import org.jetbrains.dokka.base.renderers.RootCreator
import org.jetbrains.dokka.base.resolvers.external.DefaultExternalLocationProviderFactory
import org.jetbrains.dokka.base.resolvers.external.javadoc.JavadocExternalLocationProviderFactory
import org.jetbrains.dokka.gfm.GfmPlugin
import org.jetbrains.dokka.gfm.location.MarkdownLocationProvider
import org.jetbrains.dokka.testApi.context.MockContext
import renderers.RenderingOnlyTestBase
import utils.TestOutputWriter

abstract class GfmRenderingOnlyTestBase : RenderingOnlyTestBase<String>() {

    val files = TestOutputWriter()
    override val context = MockContext(
        DokkaBase().outputWriter to { files },
        DokkaBase().locationProviderFactory to MarkdownLocationProvider::Factory,
        DokkaBase().externalLocationProviderFactory to ::JavadocExternalLocationProviderFactory,
        DokkaBase().externalLocationProviderFactory to ::DefaultExternalLocationProviderFactory,
        GfmPlugin().gfmPreprocessors to { RootCreator },

        testConfiguration = DokkaConfigurationImpl(moduleName = "root", finalizeCoroutines = false)
    )

    override val renderedContent: String by lazy {
        files.contents.getValue("test-page.md")
    }
}