Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Changed markup tests to not fail if required modules are not installed

git-svn-id: http://code.djangoproject.com/svn/django/trunk@483 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 6f4e6b4bcbdb79e8aceac1af9ac66088d66c51b0 1 parent 8dac184
@jacobian jacobian authored
Showing with 46 additions and 24 deletions.
  1. +46 −24 tests/othertests/markup.py
View
70 tests/othertests/markup.py
@@ -1,45 +1,67 @@
# Quick tests for the markup templatetags (django.contrib.markup)
-#
-# Requires that all supported markup modules be installed
-# (http://dealmeida.net/projects/textile/,
-# http://www.freewisdom.org/projects/python-markdown, and
-# http://docutils.sf.net/)
-
from django.core.template import Template, Context
import django.contrib.markup.templatetags.markup # this registers the filters
+# find out if markup modules are installed and tailor the test appropriately
+try:
+ import textile
+except ImportError:
+ textile = None
+
+try:
+ import markdown
+except ImportError:
+ markdown = None
+
+try:
+ import docutils
+except ImportError:
+ docutils = None
+
# simple examples 'cause this isn't actually testing the markup, just
# that the filters work as advertised
+### test textile
+
textile_content = """Paragraph 1
Paragraph 2 with "quotes" and @code@"""
-markdown_content = """Paragraph 1
+t = Template("{{ textile_content|textile }}")
+rendered = t.render(Context(locals())).strip()
+if textile:
+ assert rendered == """<p>Paragraph 1</p>
-## An h2 with *italics*"""
+<p>Paragraph 2 with &#8220;quotes&#8221; and <code>code</code></p>"""
+else:
+ assert rendered == textile_content
+
+### test markdown
-rest_content = """Paragraph 1
+markdown_content = """Paragraph 1
-Paragraph 2 with a link_
+## An h2"""
-.. _link: http://www.example.com/"""
+t = Template("{{ markdown_content|markdown }}")
+rendered = t.render(Context(locals())).strip()
+if textile:
+ assert rendered == """<p>Paragraph 1</p><h2>An h2</h2>"""
+else:
+ assert rendered == markdown_content
-t = Template("""{{ textile_content|textile }}
-----
-{{ markdown_content|markdown }}
-----
-{{ rest_content|restructuredtext }}""")
+### test rest
-rendered = t.render(Context(locals()))
+rest_content = """Paragraph 1
-assert rendered.strip() == """<p>Paragraph 1</p>
+Paragraph 2 with a link_
-<p>Paragraph 2 with &#8220;quotes&#8221; and <code>code</code></p>
-----
-<p>Paragraph 1</p><h2>An h2 with *italics*</h2>
+.. _link: http://www.example.com/"""
-----
-<p>Paragraph 1</p>
-<p>Paragraph 2 with a <a class="reference" href="http://www.example.com/">link</a></p>"""
+t = Template("{{ rest_content|restructuredtext }}")
+rendered = t.render(Context(locals())).strip()
+if docutils:
+ assert rendered =="""<p>Paragraph 1</p>
+<p>Paragraph 2 with a <a class="reference" href="http://www.example.com/">link</a></p>"""
+else:
+ assert rendered == rest_content
Please sign in to comment.
Something went wrong with that request. Please try again.