package renderers.html import org.jetbrains.dokka.DokkaConfiguration import org.jetbrains.dokka.DokkaConfigurationImpl import org.jetbrains.dokka.PluginConfigurationImpl import org.jetbrains.dokka.base.DokkaBase import org.jetbrains.dokka.base.DokkaBaseConfiguration import org.jetbrains.dokka.base.renderers.html.HtmlRenderer import org.jetbrains.dokka.base.templating.toJsonString import org.jsoup.Jsoup import org.jsoup.nodes.Element import org.junit.jupiter.api.Test import renderers.testPage import utils.A import utils.Div import utils.Span import utils.match class CustomFooterTest : HtmlRenderingOnlyTestBase() { @Test fun `should include message from custom footer`() { val page = testPage { } HtmlRenderer(context).render(page) renderedContent.match( Span(A()), Span(Div("Custom message")), Span(Span("Generated by "), A(Span("dokka"), Span())) ) } override val configuration: DokkaConfigurationImpl get() = super.configuration.copy( pluginsConfiguration = listOf( PluginConfigurationImpl( DokkaBase::class.java.canonicalName, DokkaConfiguration.SerializationFormat.JSON, toJsonString(DokkaBaseConfiguration(footerMessage = """
Custom message
""")) ) ) ) override val renderedContent: Element get() = files.contents.getValue("test-page.html").let { Jsoup.parse(it) }.select(".footer").single() }