From 6f4e6b4bcbdb79e8aceac1af9ac66088d66c51b0 Mon Sep 17 00:00:00 2001 From: Jacob Kaplan-Moss Date: Thu, 11 Aug 2005 18:32:19 +0000 Subject: [PATCH] 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 --- tests/othertests/markup.py | 70 +++++++++++++++++++++++++------------- 1 file changed, 46 insertions(+), 24 deletions(-) diff --git a/tests/othertests/markup.py b/tests/othertests/markup.py index 0489b16b30..b1ffb99c8a 100644 --- a/tests/othertests/markup.py +++ b/tests/othertests/markup.py @@ -1,24 +1,56 @@ # 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@""" +t = Template("{{ textile_content|textile }}") +rendered = t.render(Context(locals())).strip() +if textile: + assert rendered == """

Paragraph 1

+ +

Paragraph 2 with “quotes” and code

""" +else: + assert rendered == textile_content + +### test markdown + markdown_content = """Paragraph 1 -## An h2 with *italics*""" +## An h2""" + +t = Template("{{ markdown_content|markdown }}") +rendered = t.render(Context(locals())).strip() +if textile: + assert rendered == """

Paragraph 1

An h2

""" +else: + assert rendered == markdown_content + +### test rest rest_content = """Paragraph 1 @@ -26,20 +58,10 @@ Paragraph 2 with a link_ .. _link: http://www.example.com/""" -t = Template("""{{ textile_content|textile }} ----- -{{ markdown_content|markdown }} ----- -{{ rest_content|restructuredtext }}""") - -rendered = t.render(Context(locals())) - -assert rendered.strip() == """

Paragraph 1

- -

Paragraph 2 with “quotes” and code

----- -

Paragraph 1

An h2 with *italics*

- ----- -

Paragraph 1

-

Paragraph 2 with a link

""" \ No newline at end of file +t = Template("{{ rest_content|restructuredtext }}") +rendered = t.render(Context(locals())).strip() +if docutils: + assert rendered =="""

Paragraph 1

+

Paragraph 2 with a link

""" +else: + assert rendered == rest_content \ No newline at end of file