summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrsiddharth <s@ricketyspace.net>2018-01-02 00:37:33 +0000
committerrsiddharth <s@ricketyspace.net>2018-01-02 00:37:33 +0000
commita18df9d9adc54bbc8ea1f3b1a1c59f316667e840 (patch)
tree5dcce5a32520651005f77d423291e23e1651ef40
parentd9d4e31636da136be3a8dd60d507140e03c0cf6c (diff)
md_tw.py: Add `TWBlockLexer.parse_fences`.
* md_tw.py (TWBlockLexer.parse_fences): New method. * tests/data/blexer-fences.md: New file. * tests/test_md_tw.py (test_parse_fences): New test.
-rw-r--r--md_tw.py7
-rw-r--r--tests/data/blexer-fences.md12
-rw-r--r--tests/test_md_tw.py10
3 files changed, 29 insertions, 0 deletions
diff --git a/md_tw.py b/md_tw.py
index 7cb203b..218d324 100644
--- a/md_tw.py
+++ b/md_tw.py
@@ -45,6 +45,13 @@ class TWBlockLexer(mistune.BlockLexer):
'text': m.group(0),
})
+ def parse_fences(self, m):
+ self.tokens.append({
+ 'type': 'code',
+ 'lang': None,
+ 'text': m.group(0),
+ })
+
class TWInlineLexer(mistune.InlineLexer):
"""Text Wrap Inline level lexer for inline gramars."""
diff --git a/tests/data/blexer-fences.md b/tests/data/blexer-fences.md
new file mode 100644
index 0000000..5cbb95c
--- /dev/null
+++ b/tests/data/blexer-fences.md
@@ -0,0 +1,12 @@
+Let's have some chaos:
+
+```bash
+$ echo 'Zap!'
+$ rm -rf /
+```
+> Some Jaromil art inside a block quote
+>
+> ```bash
+> $ :(){:|:&};:
+> ```
+> For more look at jaramil.dyne.org. He's awesome.
diff --git a/tests/test_md_tw.py b/tests/test_md_tw.py
index 2496f43..032ef93 100644
--- a/tests/test_md_tw.py
+++ b/tests/test_md_tw.py
@@ -58,6 +58,16 @@ class TestTWBlockLexer(object):
]
self._validate(tokens, 'code', expected_bc)
+ def test_parse_fences(self):
+ tokens = self._parse('blexer-fences.md')
+
+ expected_fences = [
+ '```bash\n$ echo \'Zap!\'\n$ rm -rf /\n```\n',
+ '```bash\n$ :(){:|:&};:\n```\n'
+ ]
+
+ self._validate(tokens, 'code', expected_fences)
+
def teardown(self):
pass