ó
 `¾Tc           @   s¥   d  Z  d d l Z d d l Z d d l Z d d l m Z d d l m Z m Z m	 Z	 d e f d „  ƒ  YZ
 d e f d „  ƒ  YZ d	 e f d
 „  ƒ  YZ d „  Z d S(   s¶   
    jinja2.testsuite.utils
    ~~~~~~~~~~~~~~~~~~~~~~

    Tests utilities jinja uses.

    :copyright: (c) 2010 by the Jinja Team.
    :license: BSD, see LICENSE for more details.
iÿÿÿÿN(   t   JinjaTestCase(   t   LRUCachet   escapet   object_type_reprt   LRUCacheTestCasec           B   s   e  Z d  „  Z d „  Z RS(   c         C   sŽ   t  d ƒ } d | d <d | d <d | d <| d d | d <t | ƒ d k sT t ‚ d | k r„ d | k r„ d | k r„ d | k sŠ t ‚ d  S(	   Ni   i   t   ai   t   bt   ci   t   d(   R   t   lent   AssertionError(   t   selfR   (    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyt   test_simple   s    



c         C   s¦   t  d ƒ } d | d <d | d <| d xw t d ƒ D]i } t j t j | | ƒ ƒ } | j | j k sn t ‚ | j | j k s† t ‚ | j | j k s5 t ‚ q5 Wd  S(   Ni   i*   t   fooi   t   bari   (	   R   t   ranget   picklet   loadst   dumpst   capacityR
   t   _mappingt   _queue(   R   t   cachet   protocolt   copy(    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyt   test_pickleable!   s    

(   t   __name__t
   __module__R   R   (    (    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyR      s   	
t   HelpersTestCasec           B   s   e  Z d  „  Z RS(   c         C   s‹   d t  f d „  ƒ  Y} |  j t d ƒ d ƒ |  j t g  ƒ d ƒ |  j t | ƒ  ƒ d ƒ |  j t d  ƒ d ƒ |  j t t ƒ d ƒ d  S(	   Nt   Xc           B   s   e  Z RS(    (   R   R   (    (    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyR   1   s   i*   s
   int objects   list objects   jinja2.testsuite.utils.X objectt   Nonet   Ellipsis(   t   objectt   assert_equalR   R   R   (   R   R   (    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyt   test_object_type_repr0   s    (   R   R   R"   (    (    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyR   .   s   t   MarkupLeakTestCasec           B   s   e  Z d  „  Z RS(   c         C   sš   t  ƒ  } xl t d ƒ D]^ } x< t d ƒ D]. } t d ƒ t d ƒ t d ƒ t d ƒ q) W| j t t j ƒ  ƒ ƒ q Wt | ƒ d k s– t d ƒ ‚ d  S(	   Ni   iè  R   s   <foo>u   foou   <foo>i   s'   ouch, c extension seems to leak objects(   t   setR   R   t   addR	   t   gct   get_objectsR
   (   R   t   countst   countt   item(    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyt   test_markup_leaks=   s    	


(   R   R   R+   (    (    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyR#   ;   s   c          C   sd   t  j ƒ  }  |  j t  j t ƒ ƒ |  j t  j t ƒ ƒ t t d ƒ s` |  j t  j t ƒ ƒ n  |  S(   Nt	   func_code(	   t   unittestt	   TestSuitet   addTestt	   makeSuiteR   R   t   hasattrR   R#   (   t   suite(    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyR2   I   s    (   t   __doc__R&   R-   R   t   jinja2.testsuiteR    t   jinja2.utilsR   R   R   R   R   R#   R2   (    (    (    s\   /var/www/send.findwatt.com/datamanager/lib/python2.7/site-packages/jinja2/testsuite/utils.pyt   <module>
   s   