##// END OF EJS Templates
Merge pull request #5388 from shashi/semicolon-fix...
Merge pull request #5388 from shashi/semicolon-fix Suppress output even when a comment follows ;. Fixes #4525.

File last commit:

r12373:07fe9446
r15885:6bc55128 merge
Show More
test_markdown.py
93 lines | 2.5 KiB | text/x-python | PythonLexer
Jonathan Frederic
Add new filter tests
r11902
"""
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
#-----------------------------------------------------------------------------
Jonathan Frederic
Escape asterik in rst tests
r11920 from copy import copy
Jonathan Frederic
Add new filter tests
r11902
Jonathan Frederic
Check for tokens instead of fuzzy output comparison
r11917 from IPython.utils.py3compat import string_types
Jonathan Frederic
Use decorator to enable test generation
r11935 from IPython.testing import decorators as dec
Jonathan Frederic
Add new filter tests
r11902
from ...tests.base import TestsBase
Jonathan Frederic
Explicit imports
r11928 from ..markdown import markdown2latex, markdown2html, markdown2rst
Jonathan Frederic
Add new filter tests
r11902
#-----------------------------------------------------------------------------
# Class
#-----------------------------------------------------------------------------
class TestMarkdown(TestsBase):
tests = [
'*test',
'**test',
'*test*',
'_test_',
'__test__',
'__*test*__',
'**test**',
'#test',
'##test',
'test\n----',
Jonathan Frederic
Removed large tests
r11916 'test [link](https://google.com/)']
Jonathan Frederic
Add new filter tests
r11902
Jonathan Frederic
Check for tokens instead of fuzzy output comparison
r11917 tokens = [
'*test',
'**test',
'test',
'test',
'test',
'test',
'test',
'test',
'test',
'test',
('test', 'https://google.com/')]
Jonathan Frederic
Add new filter tests
r11902
Jonathan Frederic
Use decorator to enable test generation
r11935 @dec.onlyif_cmds_exist('pandoc')
Jonathan Frederic
Add new filter tests
r11902 def test_markdown2latex(self):
Jonathan Frederic
Shrink header comments
r11934 """markdown2latex test"""
Jonathan Frederic
Add new filter tests
r11902 for index, test in enumerate(self.tests):
Thomas Kluyver
Remove ParametricTestCase from nbconvert tests
r12373 self._try_markdown(markdown2latex, test, self.tokens[index])
Jonathan Frederic
Add new filter tests
r11902
Jonathan Frederic
Use decorator to enable test generation
r11935 @dec.onlyif_cmds_exist('pandoc')
Jonathan Frederic
Add new filter tests
r11902 def test_markdown2html(self):
Jonathan Frederic
Shrink header comments
r11934 """markdown2html test"""
Jonathan Frederic
Add new filter tests
r11902 for index, test in enumerate(self.tests):
Thomas Kluyver
Remove ParametricTestCase from nbconvert tests
r12373 self._try_markdown(markdown2html, test, self.tokens[index])
Jonathan Frederic
Add new filter tests
r11902
Jonathan Frederic
Use decorator to enable test generation
r11935 @dec.onlyif_cmds_exist('pandoc')
Jonathan Frederic
Add new filter tests
r11902 def test_markdown2rst(self):
Jonathan Frederic
Shrink header comments
r11934 """markdown2rst test"""
Jonathan Frederic
Escape asterik in rst tests
r11920
#Modify token array for rst, escape asterik
tokens = copy(self.tokens)
tokens[0] = r'\*test'
tokens[1] = r'\*\*test'
Jonathan Frederic
Add new filter tests
r11902 for index, test in enumerate(self.tests):
Thomas Kluyver
Remove ParametricTestCase from nbconvert tests
r12373 self._try_markdown(markdown2rst, test, tokens[index])
Jonathan Frederic
Add new filter tests
r11902
Jonathan Frederic
Check for tokens instead of fuzzy output comparison
r11917 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