From 67e82bf2e80c56e865b37a4f161a1ee889ffd01e Mon Sep 17 00:00:00 2001 From: vmishenev Date: Mon, 22 Nov 2021 00:40:28 +0300 Subject: [PATCH 1/3] Fix some extra indentation in code block that is inside list --- .../src/main/kotlin/parsers/MarkdownParser.kt | 1 + .../base/src/test/kotlin/model/CommentTest.kt | 29 +++++++++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/plugins/base/src/main/kotlin/parsers/MarkdownParser.kt b/plugins/base/src/main/kotlin/parsers/MarkdownParser.kt index 75617e0c25..282cd877d4 100644 --- a/plugins/base/src/main/kotlin/parsers/MarkdownParser.kt +++ b/plugins/base/src/main/kotlin/parsers/MarkdownParser.kt @@ -317,6 +317,7 @@ open class MarkdownParser( .children .dropWhile { it.type != MarkdownTokenTypes.CODE_FENCE_CONTENT } .dropLastWhile { it.type != MarkdownTokenTypes.CODE_FENCE_CONTENT } + .filter { it.type != MarkdownTokenTypes.WHITE_SPACE } .map { if (it.type == MarkdownTokenTypes.EOL) LeafASTNode(MarkdownTokenTypes.HARD_LINE_BREAK, 0, 0) diff --git a/plugins/base/src/test/kotlin/model/CommentTest.kt b/plugins/base/src/test/kotlin/model/CommentTest.kt index 613576ae31..e37f51b9c7 100644 --- a/plugins/base/src/test/kotlin/model/CommentTest.kt +++ b/plugins/base/src/test/kotlin/model/CommentTest.kt @@ -1,8 +1,7 @@ package model import org.jetbrains.dokka.model.DProperty -import org.jetbrains.dokka.model.doc.CustomTagWrapper -import org.jetbrains.dokka.model.doc.Text +import org.jetbrains.dokka.model.doc.* import org.junit.jupiter.api.Test import utils.* @@ -49,6 +48,32 @@ class CommentTest : AbstractModelTest("/src/main/kotlin/comment/Test.kt", "comme } } + @Test + fun codeBlockWithIndentationComment() { + inlineModelTest( + """ + |/** + | * 1. + | * ``` + | * line 1 + | * line 2 + | * ``` + | */ + |val prop1 = "" + """ + ) { + with((this / "comment" / "prop1").cast()) { + name equals "prop1" + with(this.docs().firstOrNull()?.children?.firstOrNull()?.assertNotNull("Code")) { + val codeBlockChildren = ((this?.children?.firstOrNull() as? Li)?.children?.firstOrNull() as? CodeBlock)?.children + (codeBlockChildren?.get(0) as? Text)?.body equals " line 1" + (codeBlockChildren?.get(1) as? Br) notNull "Br" + (codeBlockChildren?.get(2) as? Text)?.body equals " line 2" + } + } + } + } + @Test fun emptyDoc() { inlineModelTest( From ec572969a376b2757b4a7b3b367ec1b42899b7bc Mon Sep 17 00:00:00 2001 From: Vadim Mishenev Date: Tue, 27 Sep 2022 16:03:21 +0300 Subject: [PATCH 2/3] Update CommentTest.kt --- plugins/base/src/test/kotlin/model/CommentTest.kt | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/plugins/base/src/test/kotlin/model/CommentTest.kt b/plugins/base/src/test/kotlin/model/CommentTest.kt index ed6a58d1a4..1f4f7f2576 100644 --- a/plugins/base/src/test/kotlin/model/CommentTest.kt +++ b/plugins/base/src/test/kotlin/model/CommentTest.kt @@ -2,9 +2,7 @@ package model import org.jetbrains.dokka.model.DClass import org.jetbrains.dokka.model.DProperty -import org.jetbrains.dokka.model.doc.CodeBlock -import org.jetbrains.dokka.model.doc.CustomTagWrapper -import org.jetbrains.dokka.model.doc.Text +import org.jetbrains.dokka.model.doc.* import org.junit.jupiter.api.Test import utils.* From b0f5b66399a493b43b81961136a25943b4b0ccb9 Mon Sep 17 00:00:00 2001 From: Vadim Mishenev Date: Tue, 27 Sep 2022 16:05:04 +0300 Subject: [PATCH 3/3] Update CommentTest.kt --- plugins/base/src/test/kotlin/model/CommentTest.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/base/src/test/kotlin/model/CommentTest.kt b/plugins/base/src/test/kotlin/model/CommentTest.kt index 1f4f7f2576..7f2151bc69 100644 --- a/plugins/base/src/test/kotlin/model/CommentTest.kt +++ b/plugins/base/src/test/kotlin/model/CommentTest.kt @@ -3,6 +3,7 @@ package model import org.jetbrains.dokka.model.DClass import org.jetbrains.dokka.model.DProperty import org.jetbrains.dokka.model.doc.* +import org.jetbrains.dokka.model.doc.Br import org.junit.jupiter.api.Test import utils.*