diff --git a/markdownify/__init__.py b/markdownify/__init__.py index 53bbe40..2c8327b 100644 --- a/markdownify/__init__.py +++ b/markdownify/__init__.py @@ -36,6 +36,16 @@ class MarkdownConverter(object): node.clear() node.text = text + def underline(self, text, pad_char): + text = (text or '').rstrip() + return '%s\n%s\n\n' % (text, pad_char * len(text)) if text else '' + + def convert_h1(self, el): + return self.underline(el.text, '=') + + def convert_h2(self, el): + return self.underline(el.text, '-') + def markdownify(html, strip=None, keep=None): converter = MarkdownConverter(strip, keep) diff --git a/tests.py b/tests.py index e5352a2..b1e96b1 100644 --- a/tests.py +++ b/tests.py @@ -9,3 +9,12 @@ class BasicTests(unittest.TestCase): def test_soup(self): self.assertEqual(md('
Hello
'), 'Hello') + + +class ConversionTests(unittest.TestCase): + + def test_h1(self): + self.assertEqual(md('

Hello

'), 'Hello\n=====\n\n') + + def test_h2(self): + self.assertEqual(md('

Hello

'), 'Hello\n-----\n\n')