From b616e2dde76b7424276b980785f08477815a52fd Mon Sep 17 00:00:00 2001 From: Marcin Aman Date: Fri, 9 Jul 2021 16:38:05 +0200 Subject: Add missing text styles in html (#2007) --- .../test/kotlin/renderers/html/TextStylesTest.kt | 65 ++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 plugins/base/src/test/kotlin/renderers/html/TextStylesTest.kt (limited to 'plugins/base/src/test') diff --git a/plugins/base/src/test/kotlin/renderers/html/TextStylesTest.kt b/plugins/base/src/test/kotlin/renderers/html/TextStylesTest.kt new file mode 100644 index 00000000..3c38e68c --- /dev/null +++ b/plugins/base/src/test/kotlin/renderers/html/TextStylesTest.kt @@ -0,0 +1,65 @@ +package renderers.html + +import org.jetbrains.dokka.base.renderers.html.HtmlRenderer +import org.jetbrains.dokka.pages.TextStyle +import org.jsoup.Jsoup +import org.jsoup.nodes.Element +import org.junit.jupiter.api.Test +import renderers.testPage +import utils.B +import utils.I +import utils.STRIKE +import utils.match + +class TextStylesTest : HtmlRenderingOnlyTestBase() { + @Test + fun `should include bold`(){ + val page = testPage { + text("bold text", styles = setOf(TextStyle.Bold)) + } + HtmlRenderer(context).render(page) + renderedContent.match(B("bold text")) + } + + @Test + fun `should include italics`(){ + val page = testPage { + text("italics text", styles = setOf(TextStyle.Italic)) + } + HtmlRenderer(context).render(page) + renderedContent.match(I("italics text")) + } + + @Test + fun `should include strikethrought`(){ + val page = testPage { + text("strike text", styles = setOf(TextStyle.Strikethrough)) + } + HtmlRenderer(context).render(page) + renderedContent.match(STRIKE("strike text")) + } + + @Test + fun `should include multiple styles at one`(){ + val page = testPage { + text( + "styled text", + styles = setOf( + TextStyle.Strikethrough, + TextStyle.Bold, + TextStyle.Indented, + TextStyle.UnderCoverText, + TextStyle.BreakableAfter + ) + ) + } + HtmlRenderer(context).render(page) + renderedContent.match(STRIKE(B("styled text"))) + //Our dsl swallows nbsp so i manually check for it + files.contents.getValue("test-page.html").contains(" styled text") + } + + + override val renderedContent: Element + get() = files.contents.getValue("test-page.html").let { Jsoup.parse(it) }.select("#content").single() +} \ No newline at end of file -- cgit