Commit 6d3d9db3 authored by Andreas Jung's avatar Andreas Jung

added more tests to document the behavior before the

next docutils upgrade
parent 54e2a41d
......@@ -152,6 +152,9 @@ def HTML(src,
warnings = ''.join(warning_stream.messages)
return output.encode(output_encoding)
if output_encoding != 'unicode':
return output.encode(output_encoding)
else:
return output
__all__ = ("HTML", 'render')
# -*- coding: iso-8859-15 -*-
import unittest
from reStructuredText import HTML
txt = """Hello World
============
text text
Von Vgeln und fen
===================
- some
- more
- text
"""
class TestReST(unittest.TestCase):
......@@ -8,6 +26,44 @@ class TestReST(unittest.TestCase):
# Make sure we can import the rst parser
from docutils.parsers import rst
def testEncodings(self):
def _test(txt, in_enc, out_enc):
return HTML(txt,
input_encoding=in_enc,
output_encoding=out_enc)
encoding = 'iso-8859-15'
html = _test(txt, encoding, encoding)
self.assertEqual('Vgel' in html, True)
self.assertEqual('fen' in html, True)
html = _test(txt, encoding, 'unicode')
self.assertEqual(unicode('Vgel', encoding) in html, True)
self.assertEqual(unicode('fen', encoding) in html, True)
html = _test(unicode(txt, encoding), 'unicode', encoding)
self.assertEqual('Vgel' in html, True)
self.assertEqual('fen' in html, True)
html = _test(unicode(txt, encoding), 'unicode', 'unicode')
self.assertEqual(unicode('Vgel', encoding) in html, True)
self.assertEqual(unicode('fen', encoding) in html, True)
def testHeaderLevel(self):
encoding = 'iso-8859-15'
for level in range(0, 5):
html = HTML(txt, input_encoding=encoding,
output_encoding=encoding,
initial_header_level=level)
self.assertEqual('<h%d><a name="hello-world">Hello World</a></h%d>'\
% (level+1, level+1) in html,
True)
self.assertEqual('<h%d><a name="von-v-geln-und-fen">Von Vgeln und fen</a></h%d>'\
% (level+1, level+1) in html,
True)
def test_suite():
from unittest import TestSuite, makeSuite
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment