ó
ø¢TQc           @   s  d  d l  Z  d  d l Z d  d l m Z m Z d  d l m Z d  d l m Z d  d l	 m
 Z
 y d  d l Z Wn e k
 r‡ d Z n Xy" d  d l Z e e d d ƒ Z Wn e k
 rÃ d Z n Xy d  d l Z Wn e k
 rí d Z n Xd e j f d	 „  ƒ  YZ d S(
   iÿÿÿÿN(   t   Templatet   Context(   t   test(   t   unittest(   t   escapet   version_infoi    t	   Templatesc           B   s(  e  Z d  Z d Z d Z d „  Z d „  Z e j e	 d ƒ d „  ƒ Z
 e j e	 d ƒ d „  ƒ Z e j e ou e d k d ƒ d „  ƒ Z e j e oœ e d k d ƒ d „  ƒ Z e j e oÃ e d k d ƒ d „  ƒ Z e j e d ƒ d „  ƒ Z e j e d ƒ d „  ƒ Z e j e d ƒ d „  ƒ Z RS(   s1   Paragraph 1

Paragraph 2 with "quotes" and @code@s   Paragraph 1

## An h2sH   Paragraph 1

Paragraph 2 with a link_

.. _link: http://www.example.com/c         C   s'   |  j  ƒ  t j d d t d d ƒd  S(   Nt   ignoret   categoryt   modules   django.contrib.markup(   t   save_warnings_statet   warningst   filterwarningst   DeprecationWarning(   t   self(    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   setUp*   s    
c         C   s   |  j  ƒ  d  S(   N(   t   restore_warnings_state(   R   (    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   tearDown.   s    s   textile not installedc         C   sQ   t  d ƒ } | j t i |  j d 6ƒ ƒ j ƒ  } |  j | j d d ƒ d ƒ d  S(   Ns.   {% load markup %}{{ textile_content|textile }}t   textile_contents   	t    sV   <p>Paragraph 1</p>

<p>Paragraph 2 with &#8220;quotes&#8221; and <code>code</code></p>(   R    t   renderR   R   t   stript   assertEqualt   replace(   R   t   tt   rendered(    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   test_textile1   s    %s   textile is installedc         C   sN   t  d ƒ } | j t i |  j d 6ƒ ƒ j ƒ  } |  j | t |  j ƒ ƒ d  S(   Ns.   {% load markup %}{{ textile_content|textile }}R   (   R    R   R   R   R   R   R   (   R   R   R   (    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   test_no_textile9   s    %i   i   s   markdown >= 2.1 not installedc         C   sZ   t  d ƒ } | j t i |  j d 6ƒ ƒ j ƒ  } t j d ƒ } |  j | j | ƒ ƒ d  S(   Ns0   {% load markup %}{{ markdown_content|markdown }}t   markdown_contents)   <p>Paragraph 1\s*</p>\s*<h2>\s*An h2</h2>(	   R    R   R   R   R   t   ret   compilet
   assertTruet   match(   R   R   R   t   pattern(    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   test_markdown?   s    %c         C   sK   t  d ƒ } d } | j t i | d 6ƒ ƒ j ƒ  } |  j d | k ƒ d  S(   Ns7   {% load markup %}{{ markdown_content|markdown:'safe' }}s$   {@onclick=alert('hi')}some paragraphR   t   @(   R    R   R   R   R   (   R   R   R   R   (    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   test_markdown_attribute_disableF   s    "c         C   sK   t  d ƒ } d } | j t i | d 6ƒ ƒ j ƒ  } |  j d | k ƒ d  S(   Ns0   {% load markup %}{{ markdown_content|markdown }}s$   {@onclick=alert('hi')}some paragraphR   R#   (   R    R   R   R   t   assertFalse(   R   R   R   R   (    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   test_markdown_attribute_enableM   s    "s   markdown is installedc         C   sH   t  d ƒ } | j t i |  j d 6ƒ ƒ j ƒ  } |  j | |  j ƒ d  S(   Ns0   {% load markup %}{{ markdown_content|markdown }}R   (   R    R   R   R   R   R   (   R   R   R   (    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   test_no_markdownT   s    %s   docutils not installedc         C   sm   t  d ƒ } | j t i |  j d 6ƒ ƒ j ƒ  } y |  j | d ƒ Wn! t k
 rh |  j | d ƒ n Xd  S(   Ns4   {% load markup %}{{ rest_content|restructuredtext }}t   rest_contentsi   <p>Paragraph 1</p>
<p>Paragraph 2 with a <a class="reference" href="http://www.example.com/">link</a></p>sr   <p>Paragraph 1</p>
<p>Paragraph 2 with a <a class="reference external" href="http://www.example.com/">link</a></p>(   R    R   R   R(   R   R   t   AssertionError(   R   R   R   (    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   test_docutilsZ   s    %		s   docutils is installedc         C   sH   t  d ƒ } | j t i |  j d 6ƒ ƒ j ƒ  } |  j | |  j ƒ d  S(   Ns4   {% load markup %}{{ rest_content|restructuredtext }}R(   (   R    R   R   R(   R   R   (   R   R   R   (    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   test_no_docutilsh   s    %(   i   i   (   i   i   (   i   i   (   t   __name__t
   __module__R   R   R(   R   R   R   t
   skipUnlesst   textileR   t   skipIfR   t   markdownt   markdown_versionR"   R$   R&   R'   t   docutilsR*   R+   (    (    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyR      s   		'''(   R   R   t   django.templateR    R   t   djangoR   t   django.utilsR   t   django.utils.htmlR   R/   t   ImportErrort   NoneR1   t   getattrR2   R3   t   TestCaseR   (    (    (    s4   ../Django//lib/python/django/contrib/markup/tests.pyt   <module>   s&   


