diff options
author | Georg Brandl <georg@python.org> | 2008-08-04 17:01:15 +0000 |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2008-08-04 17:01:15 +0000 |
commit | b4f71aa642916f5263e8b311f768cc4a2d77a14c (patch) | |
tree | 3c9c0a3fe45cdac203e9504fdc00047629d0e1b1 /tests/test_markup.py | |
parent | 1f608000d883b3c21d4cd54e9d282bb8d19e4ec9 (diff) | |
download | sphinx-git-b4f71aa642916f5263e8b311f768cc4a2d77a14c.tar.gz |
Merged revisions 65283,65303,65316-65317,65372-65375,65377,65380,65483-65485,65494 via svnmerge from
svn+ssh://pythondev@svn.python.org/doctools/branches/0.4.x
........
r65283 | georg.brandl | 2008-07-29 10:07:26 +0000 (Tue, 29 Jul 2008) | 2 lines
Update ez_setup.py.
........
r65303 | benjamin.peterson | 2008-07-30 12:35:34 +0000 (Wed, 30 Jul 2008) | 1 line
add a with_testapp decorator for test functions that passes the TestApp instance in a cleans up after it
........
r65316 | benjamin.peterson | 2008-07-30 23:12:07 +0000 (Wed, 30 Jul 2008) | 1 line
make the app for test_markup global to the module
........
r65317 | benjamin.peterson | 2008-07-30 23:31:29 +0000 (Wed, 30 Jul 2008) | 1 line
make TestApp.cleanup more aggressive
........
r65372 | georg.brandl | 2008-08-01 19:11:22 +0000 (Fri, 01 Aug 2008) | 2 lines
Add more tests, fix a few bugs in image handling.
........
r65373 | georg.brandl | 2008-08-01 19:28:33 +0000 (Fri, 01 Aug 2008) | 2 lines
Fix oversight.
........
r65374 | benjamin.peterson | 2008-08-01 19:36:32 +0000 (Fri, 01 Aug 2008) | 1 line
fix one broken test
........
r65375 | georg.brandl | 2008-08-01 19:41:11 +0000 (Fri, 01 Aug 2008) | 2 lines
Fix the handling of non-ASCII input in quickstart.
........
r65377 | georg.brandl | 2008-08-01 19:48:24 +0000 (Fri, 01 Aug 2008) | 2 lines
Allow REs in markup checks.
........
r65380 | georg.brandl | 2008-08-01 20:31:18 +0000 (Fri, 01 Aug 2008) | 2 lines
Don't rely on mtimes being different for changed files.
........
r65483 | georg.brandl | 2008-08-04 09:01:40 +0000 (Mon, 04 Aug 2008) | 4 lines
Add an "encoding" option to literalinclude.
Add tests for include directives.
........
r65484 | georg.brandl | 2008-08-04 09:11:17 +0000 (Mon, 04 Aug 2008) | 2 lines
Add changelog entry.
........
r65485 | georg.brandl | 2008-08-04 09:21:58 +0000 (Mon, 04 Aug 2008) | 2 lines
Fix markup.
........
r65494 | georg.brandl | 2008-08-04 16:34:59 +0000 (Mon, 04 Aug 2008) | 2 lines
Correctly use HTML file suffix in templates.
........
Diffstat (limited to 'tests/test_markup.py')
-rw-r--r-- | tests/test_markup.py | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/tests/test_markup.py b/tests/test_markup.py index bba1a3e0a..23330a60c 100644 --- a/tests/test_markup.py +++ b/tests/test_markup.py @@ -9,6 +9,8 @@ :license: BSD. """ +import re + from util import * from docutils import frontend, utils, nodes @@ -18,11 +20,16 @@ from sphinx import addnodes from sphinx.htmlwriter import HTMLWriter, SmartyPantsHTMLTranslator from sphinx.latexwriter import LaTeXWriter, LaTeXTranslator -app = TestApp() -optparser = frontend.OptionParser(components=(rst.Parser, HTMLWriter, LaTeXWriter)) -settings = optparser.get_default_values() -settings.env = app.builder.env -parser = rst.Parser() +def setup_module(): + global app, settings, parser + app = TestApp() + optparser = frontend.OptionParser(components=(rst.Parser, HTMLWriter, LaTeXWriter)) + settings = optparser.get_default_values() + settings.env = app.builder.env + parser = rst.Parser() + +def teardown_module(): + app.cleanup() # since we're not resolving the markup afterwards, these nodes may remain class ForgivingTranslator: @@ -38,7 +45,7 @@ class ForgivingLaTeXTranslator(LaTeXTranslator, ForgivingTranslator): pass -def verify(rst, html_expected, latex_expected): +def verify_re(rst, html_expected, latex_expected): document = utils.new_document('test data', settings) parser.parse(rst, document) for msg in document.traverse(nodes.system_message): @@ -49,14 +56,17 @@ def verify(rst, html_expected, latex_expected): html_translator = ForgivingHTMLTranslator(app.builder, document) document.walkabout(html_translator) html_translated = ''.join(html_translator.fragment).strip() - assert html_translated == html_expected, 'from ' + rst + assert re.match(html_expected, html_translated), 'from' + rst if latex_expected: latex_translator = ForgivingLaTeXTranslator(document, app.builder) latex_translator.first_document = -1 # don't write \begin{document} document.walkabout(latex_translator) latex_translated = ''.join(latex_translator.body).strip() - assert latex_translated == latex_expected, 'from ' + rst + assert re.match(latex_expected, latex_translated), 'from ' + rst + +def verify(rst, html_expected, latex_expected): + verify_re(rst, re.escape(html_expected) + '$', re.escape(latex_expected) + '$') def test_inline(): @@ -78,9 +88,9 @@ def test_inline(): '\\emph{a $\\rightarrow$ b}') # non-interpolation of dashes in option role - verify(':option:`--with-option`', - '<p><em>--with-option</em></p>', - r'\emph{\texttt{--with-option}}') + verify_re(':option:`--with-option`', + '<p><em( class="xref")?>--with-option</em></p>$', + r'\\emph{\\texttt{--with-option}}$') # verify smarty-pants quotes verify('"John"', '<p>“John”</p>', "``John''") |