Files
life-echo/api/tests/test_markdown_sanitize.py

28 lines
928 B
Python
Raw Normal View History

import unittest
from app.features.memoir.markdown_sanitize import (
sanitize_story_for_chapter_compose,
strip_leading_heading_if_matches_title,
strip_markdown_tables,
)
class MarkdownSanitizeTest(unittest.TestCase):
def test_strip_table_block(self):
md = "第一段\n\n| a | b |\n| - | - |\n| 1 | 2 |\n\n第二段"
out = strip_markdown_tables(md)
self.assertNotIn("| a |", out)
self.assertIn("第一段", out)
self.assertIn("第二段", out)
def test_strip_heading_when_matches_title(self):
body = "## 童年\n\n正文"
out = strip_leading_heading_if_matches_title(body, "童年")
self.assertEqual(out, "正文")
def test_sanitize_compose(self):
raw = "| x | y |\n|---|---|\n|1|2|\n\n你好"
out = sanitize_story_for_chapter_compose(raw, "T")
self.assertIn("你好", out)
self.assertNotIn("| x |", out)