aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_extensions.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_extensions.py')
-rw-r--r--tests/test_extensions.py78
1 files changed, 74 insertions, 4 deletions
diff --git a/tests/test_extensions.py b/tests/test_extensions.py
index fd77e5e..bee270a 100644
--- a/tests/test_extensions.py
+++ b/tests/test_extensions.py
@@ -31,8 +31,6 @@ class TestCodeHilite(unittest.TestCase):
""" Test codehilite extension. """
def setUp(self):
- self.md = markdown.Markdown(extensions=['codehilite'])
-
self.has_pygments = True
try:
import pygments
@@ -41,16 +39,88 @@ class TestCodeHilite(unittest.TestCase):
def testBasicCodeHilite(self):
text = '\t# A Code Comment'
+ md = markdown.Markdown(extensions=['codehilite'])
+ if self.has_pygments:
+ self.assertEqual(md.convert(text),
+ '<div class="codehilite">'
+ '<pre><span class="c"># A Code Comment</span>\n'
+ '</pre></div>')
+ else:
+ self.assertEqual(md.convert(text),
+ '<pre class="codehilite"><code># A Code Comment'
+ '</code></pre>')
+
+ def testLinenumsTrue(self):
+ text = '\t# A Code Comment'
+ md = markdown.Markdown(extensions=['codehilite(linenums=True)'])
+ if self.has_pygments:
+ self.assertEqual(md.convert(text),
+ '<table class="codehilitetable"><tr>'
+ '<td class="linenos"><div class="linenodiv"><pre>1</pre></div></td>'
+ '<td class="code"><div class="codehilite">'
+ '<pre><span class="c"># A Code Comment</span>\n</pre>'
+ '</div>\n</td>'
+ '</tr></table>')
+ else:
+ self.assertEqual(md.convert(text),
+ '<pre class="codehilite"><code class="linenums"># A Code Comment'
+ '</code></pre>')
+
+ def testLinenumsFalse(self):
+ text = '\t#!Python\n\t# A Code Comment'
+ md = markdown.Markdown(extensions=['codehilite(linenums=False)'])
+ if self.has_pygments:
+ self.assertEqual(md.convert(text),
+ '<div class="codehilite">'
+ '<pre><span class="c"># A Code Comment</span>\n'
+ '</pre></div>')
+ else:
+ self.assertEqual(md.convert(text),
+ '<pre class="codehilite"><code class="language-python"># A Code Comment'
+ '</code></pre>')
+
+ def testLinenumsNone(self):
+ text = '\t# A Code Comment'
+ md = markdown.Markdown(extensions=['codehilite(linenums=None)'])
if self.has_pygments:
- self.assertEqual(self.md.convert(text),
+ self.assertEqual(md.convert(text),
'<div class="codehilite">'
'<pre><span class="c"># A Code Comment</span>\n'
'</pre></div>')
else:
- self.assertEqual(self.md.convert(text),
+ self.assertEqual(md.convert(text),
'<pre class="codehilite"><code># A Code Comment'
'</code></pre>')
+ def testLinenumsNoneWithShebang(self):
+ text = '\t#!Python\n\t# A Code Comment'
+ md = markdown.Markdown(extensions=['codehilite(linenums=None)'])
+ if self.has_pygments:
+ self.assertEqual(md.convert(text),
+ '<table class="codehilitetable"><tr>'
+ '<td class="linenos"><div class="linenodiv"><pre>1</pre></div></td>'
+ '<td class="code"><div class="codehilite">'
+ '<pre><span class="c"># A Code Comment</span>\n</pre>'
+ '</div>\n</td>'
+ '</tr></table>')
+ else:
+ self.assertEqual(md.convert(text),
+ '<pre class="codehilite"><code class="language-python linenums"># A Code Comment'
+ '</code></pre>')
+
+ def testLinenumsNoneWithColon(self):
+ text = '\t:::Python\n\t# A Code Comment'
+ md = markdown.Markdown(extensions=['codehilite(linenums=None)'])
+ if self.has_pygments:
+ self.assertEqual(md.convert(text),
+ '<div class="codehilite">'
+ '<pre><span class="c"># A Code Comment</span>\n'
+ '</pre></div>')
+ else:
+ self.assertEqual(md.convert(text),
+ '<pre class="codehilite"><code class="language-python"># A Code Comment'
+ '</code></pre>')
+
class TestFencedCode(unittest.TestCase):
""" Test fenced_code extension. """