##// END OF EJS Templates
Backport PR #4178: add missing data_javascript...
Backport PR #4178: add missing data_javascript Note that javascript is still excluded from html output by default, but this makes it possible to include javascript output in custom templates. candidate for backport to 1.1

File last commit:

r11936:9b5a6a06
r12465:b2940d33
Show More
test_markdown.py
93 lines | 2.5 KiB | text/x-python | PythonLexer
"""
Module with tests for Markdown
"""
#-----------------------------------------------------------------------------
# Copyright (c) 2013, the IPython Development Team.
#
# Distributed under the terms of the Modified BSD License.
#
# The full license is in the file COPYING.txt, distributed with this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
from copy import copy
from IPython.utils.py3compat import string_types
from IPython.testing import decorators as dec
from ...tests.base import TestsBase
from ..markdown import markdown2latex, markdown2html, markdown2rst
#-----------------------------------------------------------------------------
# Class
#-----------------------------------------------------------------------------
class TestMarkdown(TestsBase):
tests = [
'*test',
'**test',
'*test*',
'_test_',
'__test__',
'__*test*__',
'**test**',
'#test',
'##test',
'test\n----',
'test [link](https://google.com/)']
tokens = [
'*test',
'**test',
'test',
'test',
'test',
'test',
'test',
'test',
'test',
'test',
('test', 'https://google.com/')]
@dec.onlyif_cmds_exist('pandoc')
def test_markdown2latex(self):
"""markdown2latex test"""
for index, test in enumerate(self.tests):
yield self._try_markdown(markdown2latex, test, self.tokens[index])
@dec.onlyif_cmds_exist('pandoc')
def test_markdown2html(self):
"""markdown2html test"""
for index, test in enumerate(self.tests):
yield self._try_markdown(markdown2html, test, self.tokens[index])
@dec.onlyif_cmds_exist('pandoc')
def test_markdown2rst(self):
"""markdown2rst test"""
#Modify token array for rst, escape asterik
tokens = copy(self.tokens)
tokens[0] = r'\*test'
tokens[1] = r'\*\*test'
for index, test in enumerate(self.tests):
yield self._try_markdown(markdown2rst, test, tokens[index])
def _try_markdown(self, method, test, tokens):
results = method(test)
if isinstance(tokens, string_types):
assert tokens in results
else:
for token in tokens:
assert token in results