From 0a312062ac4b40e350eeb986e37f73f4cb37fb84 Mon Sep 17 00:00:00 2001 From: wookie184 Date: Mon, 30 Dec 2024 14:45:13 +0000 Subject: Remove surrounding whitespace from doc description markdown --- tests/bot/exts/info/doc/test_parsing.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'tests') diff --git a/tests/bot/exts/info/doc/test_parsing.py b/tests/bot/exts/info/doc/test_parsing.py index d2105a53c..065255bea 100644 --- a/tests/bot/exts/info/doc/test_parsing.py +++ b/tests/bot/exts/info/doc/test_parsing.py @@ -1,5 +1,7 @@ from unittest import TestCase +from bs4 import BeautifulSoup + from bot.exts.info.doc import _parsing as parsing from bot.exts.info.doc._markdown import DocMarkdownConverter @@ -87,3 +89,18 @@ class MarkdownConverterTest(TestCase): with self.subTest(input_string=input_string): d = DocMarkdownConverter(page_url="https://example.com") self.assertEqual(d.convert(input_string), expected_output) + + +class MarkdownCreationTest(TestCase): + def test_surrounding_whitespace(self): + test_cases = ( + ("

Hello World

", "Hello World"), + ("

Hello

World

", "Hello\n\nWorld"), + ) + self._run_tests(test_cases) + + def _run_tests(self, test_cases: tuple[tuple[str, str], ...]): + for input_string, expected_output in test_cases: + with self.subTest(input_string=input_string): + tags = BeautifulSoup(input_string, "html.parser") + self.assertEqual(parsing._create_markdown(None, tags, "https://example.com"), expected_output) -- cgit v1.2.3 From 4fedcef87edaf52abbc0b7331e206bf48d645271 Mon Sep 17 00:00:00 2001 From: wookie184 Date: Mon, 30 Dec 2024 15:11:49 +0000 Subject: Fix rendering of markdown headers in docs --- bot/exts/info/doc/_markdown.py | 2 +- tests/bot/exts/info/doc/test_parsing.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/bot/exts/info/doc/_markdown.py b/bot/exts/info/doc/_markdown.py index f3d769070..a030903ed 100644 --- a/bot/exts/info/doc/_markdown.py +++ b/bot/exts/info/doc/_markdown.py @@ -31,7 +31,7 @@ class DocMarkdownConverter(markdownify.MarkdownConverter): bullet = bullets[depth % len(bullets)] return f"{bullet} {text}\n" - def convert_hn(self, _n: int, el: PageElement, text: str, convert_as_inline: bool) -> str: + def _convert_hn(self, _n: int, el: PageElement, text: str, convert_as_inline: bool) -> str: """Convert h tags to bold text with ** instead of adding #.""" if convert_as_inline: return text diff --git a/tests/bot/exts/info/doc/test_parsing.py b/tests/bot/exts/info/doc/test_parsing.py index 065255bea..7136fc32c 100644 --- a/tests/bot/exts/info/doc/test_parsing.py +++ b/tests/bot/exts/info/doc/test_parsing.py @@ -96,6 +96,7 @@ class MarkdownCreationTest(TestCase): test_cases = ( ("

Hello World

", "Hello World"), ("

Hello

World

", "Hello\n\nWorld"), + ("

Title

", "**Title**") ) self._run_tests(test_cases) -- cgit v1.2.3