ó
`¾Tc           @   sQ   d  Z  d d l Z d d l Z d d l m Z d e f d „  ƒ  YZ d „  Z d S(   s¹   
    flask.testsuite.templating
    ~~~~~~~~~~~~~~~~~~~~~~~~~~

    Template functionality

    :copyright: (c) 2011 by Armin Ronacher.
    :license: BSD, see LICENSE for more details.
iÿÿÿÿN(   t   FlaskTestCaset   TemplatingTestCasec           B   sò   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   se   t  j t ƒ } | j d „  ƒ } | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j | j d ƒ d  S(   Nc           S   s   i d d 6S(   Ni*   t   injected_value(    (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   context_processor   s    t   /c           S   s   t  j d d d ƒS(   Ns   context_template.htmlt   valuei   (   t   flaskt   render_template(    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   index   s    s   <p>23|42(	   R   t   Flaskt   __name__R   t   routet   test_clientt   gett   assert_equalt   data(   t   selft   appR   R   t   rv(    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_context_processing   s
    c         C   sS   t  j t ƒ } | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j | j d ƒ d  S(   NR   c           S   s   t  j d d d ƒS(   Ns   {{ config }}t   configi*   (   R   t   render_template_string(    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR       s    t   42(   R   R	   R
   R   R   R   R   R   (   R   R   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_original_win   s    c         C   sd   t  j t ƒ } d | j d <| j d „  ƒ } | j ƒ  $ t  j d ƒ } |  j | d ƒ Wd  QXd  S(   Ns   Special Worldt
   WORLD_NAMEc           S   s   t  d d ƒ S(   Nt   fooi*   (   t   dict(    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   )   s    s'   Hello {{ config.WORLD_NAME }} {{ foo }}s   Hello Special World 42(   R   R	   R
   R   R   t   app_contextR   R   (   R   R   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_request_less_rendering&   s    c         C   sn   t  j t ƒ } d | _ | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j | j j	 ƒ  d d d d g ƒ d  S(	   Ns   development keyR   c           S   s&   d t  j _ d t  j d <t  j d ƒ S(   Ni   t   ahat   tests–   
                {{ request.args.foo }}
                {{ g.foo }}
                {{ config.DEBUG }}
                {{ session.test }}
            (   R   t   gR   t   sessionR   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   5   s    s   /?foo=42R   t   23t   FalseR   (
   R   R	   R
   t
   secret_keyR   R   R   R   R   t   split(   R   R   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_standard_context2   s
    	
c            sw   d ‰  t  j t ƒ } | j d ƒ ‡  f d †  ƒ } | j ƒ  j d ƒ j j ƒ  } |  j | d d d d d d g ƒ d  S(   Ns   <p>Hello World!R   c              s"   t  j d d ˆ  d t  j ˆ  ƒ ƒS(   Ns   escaping_template.htmlt   textt   html(   R   R   t   Markup(    (   R&   (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   E   s    s   &lt;p&gt;Hello World!(	   R   R	   R
   R   R   R   R   t
   splitlinesR   (   R   R   R   t   lines(    (   R&   s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_escapingB   s    	c      	   C   sd   t  j t ƒ } | j ƒ  C |  j t  j d d d ƒd ƒ |  j t  j d d d ƒd ƒ Wd  QXd  S(   Ns	   {{ foo }}R   s   <test>s   mail.txts   <test> Mail(   R   R	   R
   t   test_request_contextR   R   R   (   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_no_escapingS   s    c         C   sN   t  j t ƒ } | j ƒ  - t  j d d ƒ } |  j | d ƒ d ƒ Wd  QXd  S(   Ns   _macro.htmlt   hellot   Worlds   Hello World!(   R   R	   R
   R,   t   get_template_attributeR   (   R   R   t   macro(    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_macros[   s    c         C   s~   t  j t ƒ } | j ƒ  d „  ƒ } |  j d | j j j ƒ  ƒ |  j | j j d | ƒ |  j | j j d d ƒ d ƒ d  S(   Nc         S   s   |  d  d  d … S(   Niÿÿÿÿ(    (   t   s(    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt
   my_reversec   s    R4   t   abcdt   dcba(	   R   R	   R
   t   template_filtert	   assert_int	   jinja_envt   filterst   keysR   (   R   R   R4   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_template_filtera   s
    c         C   s   t  j t ƒ } d „  } | j | ƒ |  j d | j j j ƒ  ƒ |  j | j j d | ƒ |  j | j j d d ƒ d ƒ d  S(   Nc         S   s   |  d  d  d … S(   Niÿÿÿÿ(    (   R3   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR4   l   s    R4   R5   R6   (	   R   R	   R
   t   add_template_filterR8   R9   R:   R;   R   (   R   R   R4   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_add_template_filterj   s    	c         C   s   t  j t ƒ } | j d ƒ d „  ƒ } |  j d | j j j ƒ  ƒ |  j | j j d | ƒ |  j | j j d d ƒ d ƒ d  S(   Nt   strrevc         S   s   |  d  d  d … S(   Niÿÿÿÿ(    (   R3   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR4   u   s    R5   R6   (	   R   R	   R
   R7   R8   R9   R:   R;   R   (   R   R   R4   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_template_filter_with_names   s
    c         C   s‚   t  j t ƒ } d „  } | j | d ƒ |  j d | j j j ƒ  ƒ |  j | j j d | ƒ |  j | j j d d ƒ d ƒ d  S(   Nc         S   s   |  d  d  d … S(   Niÿÿÿÿ(    (   R3   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR4   ~   s    R?   R5   R6   (	   R   R	   R
   R=   R8   R9   R:   R;   R   (   R   R   R4   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt"   test_add_template_filter_with_name|   s    	c         C   sh   t  j t ƒ } | j ƒ  d „  ƒ } | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j | j d ƒ d  S(   Nc         S   s   |  d  d  d … S(   Niÿÿÿÿ(    (   R3   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   super_reverse‡   s    R   c           S   s   t  j d d d ƒS(   Ns   template_filter.htmlR   R5   (   R   R   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   Š   s    R6   (	   R   R	   R
   R7   R   R   R   R   R   (   R   R   RB   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt"   test_template_filter_with_template…   s
    c         C   si   t  j t ƒ } d „  } | j | ƒ | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j | j d ƒ d  S(   Nc         S   s   |  d  d  d … S(   Niÿÿÿÿ(    (   R3   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyRB   ’   s    R   c           S   s   t  j d d d ƒS(   Ns   template_filter.htmlR   R5   (   R   R   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   •   s    R6   (	   R   R	   R
   R=   R   R   R   R   R   (   R   R   RB   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt&   test_add_template_filter_with_template   s    	c         C   sk   t  j t ƒ } | j d ƒ d „  ƒ } | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j | j d ƒ d  S(   NRB   c         S   s   |  d  d  d … S(   Niÿÿÿÿ(    (   R3   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR4      s    R   c           S   s   t  j d d d ƒS(   Ns   template_filter.htmlR   R5   (   R   R   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR       s    R6   (	   R   R	   R
   R7   R   R   R   R   R   (   R   R   R4   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt+   test_template_filter_with_name_and_template›   s
    c         C   sl   t  j t ƒ } d „  } | j | d ƒ | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j | j d ƒ d  S(   Nc         S   s   |  d  d  d … S(   Niÿÿÿÿ(    (   R3   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR4   ¨   s    RB   R   c           S   s   t  j d d d ƒS(   Ns   template_filter.htmlR   R5   (   R   R   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   «   s    R6   (	   R   R	   R
   R=   R   R   R   R   R   (   R   R   R4   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt/   test_add_template_filter_with_name_and_template¦   s    	c         C   s{   t  j t ƒ } | j ƒ  d „  ƒ } |  j d | j j j ƒ  ƒ |  j | j j d | ƒ |  j	 | j j d t
 ƒ ƒ d  S(   Nc         S   s   t  |  t ƒ S(   N(   t
   isinstancet   bool(   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   boolean³   s    RI   (   R   R	   R
   t   template_testR8   R9   t   testsR;   R   t   assert_trueR"   (   R   R   RI   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_template_test±   s
    c         C   s|   t  j t ƒ } d „  } | j | ƒ |  j d | j j j ƒ  ƒ |  j | j j d | ƒ |  j	 | j j d t
 ƒ ƒ d  S(   Nc         S   s   t  |  t ƒ S(   N(   RG   RH   (   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyRI   ¼   s    RI   (   R   R	   R
   t   add_template_testR8   R9   RK   R;   R   RL   R"   (   R   R   RI   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_add_template_testº   s    	c         C   s~   t  j t ƒ } | j d ƒ d „  ƒ } |  j d | j j j ƒ  ƒ |  j | j j d | ƒ |  j	 | j j d t
 ƒ ƒ d  S(   NRI   c         S   s   t  |  t ƒ S(   N(   RG   RH   (   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt
   is_booleanÅ   s    (   R   R	   R
   RJ   R8   R9   RK   R;   R   RL   R"   (   R   R   RP   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_template_test_with_nameÃ   s
    c         C   s   t  j t ƒ } d „  } | j | d ƒ |  j d | j j j ƒ  ƒ |  j | j j d | ƒ |  j	 | j j d t
 ƒ ƒ d  S(   Nc         S   s   t  |  t ƒ S(   N(   RG   RH   (   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyRP   Î   s    RI   (   R   R	   R
   RN   R8   R9   RK   R;   R   RL   R"   (   R   R   RP   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt    test_add_template_test_with_nameÌ   s    	c         C   sh   t  j t ƒ } | j ƒ  d „  ƒ } | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j d | j ƒ d  S(   Nc         S   s   t  |  t ƒ S(   N(   RG   RH   (   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyRI   ×   s    R   c           S   s   t  j d d t ƒS(   Ns   template_test.htmlR   (   R   R   R"   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   Ú   s    s   Success!(	   R   R	   R
   RJ   R   R   R   R8   R   (   R   R   RI   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt    test_template_test_with_templateÕ   s
    c         C   si   t  j t ƒ } d „  } | j | ƒ | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j d | j ƒ d  S(   Nc         S   s   t  |  t ƒ S(   N(   RG   RH   (   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyRI   â   s    R   c           S   s   t  j d d t ƒS(   Ns   template_test.htmlR   (   R   R   R"   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   å   s    s   Success!(	   R   R	   R
   RN   R   R   R   R8   R   (   R   R   RI   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt$   test_add_template_test_with_templateà   s    	c         C   sk   t  j t ƒ } | j d ƒ d „  ƒ } | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j d | j ƒ d  S(   NRI   c         S   s   t  |  t ƒ S(   N(   RG   RH   (   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyRP   í   s    R   c           S   s   t  j d d t ƒS(   Ns   template_test.htmlR   (   R   R   R"   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   ð   s    s   Success!(	   R   R	   R
   RJ   R   R   R   R8   R   (   R   R   RP   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt)   test_template_test_with_name_and_templateë   s
    c         C   sl   t  j t ƒ } d „  } | j | d ƒ | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j d | j ƒ d  S(   Nc         S   s   t  |  t ƒ S(   N(   RG   RH   (   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyRP   ø   s    RI   R   c           S   s   t  j d d t ƒS(   Ns   template_test.htmlR   (   R   R   R"   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR   û   s    s   Success!(	   R   R	   R
   RN   R   R   R   R8   R   (   R   R   RP   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt-   test_add_template_test_with_name_and_templateö   s    	c         C   s­   t  j t ƒ } | j ƒ  d „  ƒ } |  j d | j j j ƒ  ƒ |  j | j j d | ƒ |  j	 | j j d ƒ  d ƒ | j
 ƒ  $ t  j d ƒ } |  j | d ƒ Wd  QXd  S(   Nc           S   s   d S(   Ni*   (    (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt	   get_stuff  s    RW   i*   s   {{ get_stuff() }}R   (   R   R	   R
   t   template_globalR8   R9   t   globalsR;   R   RL   R   R   (   R   R   RW   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_add_template_global  s    c         C   so   d t  j f d „  ƒ  Y} | t ƒ } | j d ƒ d „  ƒ } | j ƒ  } | j d ƒ } |  j | j d ƒ d  S(   Nt   MyFlaskc           B   s   e  Z d  „  Z RS(   c         S   s!   d d l  m } | i d d 6ƒ S(   Niÿÿÿÿ(   t
   DictLoaders   Hello Custom World!s
   index.html(   t   jinja2R\   (   R   R\   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   create_global_jinja_loader  s    (   R
   t
   __module__R^   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR[     s   R   c           S   s   t  j d ƒ S(   Ns
   index.html(   R   R   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR     s    s   Hello Custom World!(   R   R	   R
   R   R   R   R   R   (   R   R[   R   R   t   cR   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_custom_template_loader  s    c         C   se   t  j t ƒ } | j d „  ƒ } | j d ƒ d „  ƒ } | j ƒ  j d ƒ } |  j | j d ƒ d  S(   Nc           S   s   i d d 6S(   Nt   Jamesont   whiskey(    (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR     s    R   c           S   s   t  j d d d g d d ƒS(   Ns   no_template.xmls   simple_template.htmls   context_template.htmlR   i   (   R   R   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR     s
    	s   <h1>Jameson</h1>(	   R   R	   R
   R   R   R   R   R   R   (   R   R   R   R   R   (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   test_iterable_loader  s
    (   R
   R_   R   R   R   R%   R+   R-   R2   R<   R>   R@   RA   RC   RD   RE   RF   RM   RO   RQ   RR   RS   RT   RU   RV   RZ   Ra   Rd   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyR      s4   																																	c          C   s&   t  j ƒ  }  |  j t  j t ƒ ƒ |  S(   N(   t   unittestt	   TestSuitet   addTestt	   makeSuiteR   (   t   suite(    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyRi   +  s    (   t   __doc__R   Re   t   flask.testsuiteR    R   Ri   (    (    (    s`   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/flask/testsuite/templating.pyt   <module>
   s   ÿ 