Add test coverage of title line breaks, and don't break markdown titles

This commit is contained in:
Veronica Berglyd Olsen
2024-10-23 21:12:25 +02:00
parent f77cd1c752
commit bfa82f6bb3
5 changed files with 185 additions and 109 deletions
+10 -6
View File
@@ -22,6 +22,7 @@ from __future__ import annotations
import pytest
from novelwriter.constants import nwHeadFmt
from novelwriter.core.project import NWProject
from novelwriter.formats.shared import BlockFmt, BlockTyp
from novelwriter.formats.tomarkdown import ToMarkdown
@@ -37,22 +38,25 @@ def testFmtToMarkdown_ConvertHeaders(mockGUI):
md._isFirst = True
# Header 1
md._text = "# Partition\n"
md._text = "# Title\n"
md.setPartitionFormat(f"Part{nwHeadFmt.BR}{nwHeadFmt.TITLE}")
md.tokenizeText()
md.doConvert()
assert md._pages[-1] == "# Partition\n\n"
assert md._pages[-1] == "# Part - Title\n\n"
# Header 2
md._text = "## Chapter Title\n"
md._text = "## Title\n"
md.setChapterFormat(f"Chapter {nwHeadFmt.CH_NUM}{nwHeadFmt.BR}{nwHeadFmt.TITLE}")
md.tokenizeText()
md.doConvert()
assert md._pages[-1] == "## Chapter Title\n\n"
assert md._pages[-1] == "## Chapter 1 - Title\n\n"
# Header 3
md._text = "### Scene Title\n"
md._text = "### Title\n"
md.setSceneFormat(f"Scene {nwHeadFmt.SC_ABS}{nwHeadFmt.BR}{nwHeadFmt.TITLE}")
md.tokenizeText()
md.doConvert()
assert md._pages[-1] == "### Scene Title\n\n"
assert md._pages[-1] == "### Scene 1 - Title\n\n"
# Header 4
md._text = "#### Section Title\n"