σ
¨[c           @` s>  d  d l  m Z m Z m Z d  d l Z d  d l Z d  d l Z d  d l Z d  d l m	 Z	 d  d l
 m Z d  d l m Z m Z m Z m Z m Z m Z m Z m Z m Z e rΕ d  d l m Z n d  d l m Z d e j f d     YZ d	 e f d
     YZ d e f d     YZ d e f d     YZ d e f d     YZ d e f d     YZ d e f d     YZ  d e j f d     YZ! d e j f d     YZ" d e j f d     YZ# d e j f d     YZ$ d e j f d     YZ% d e j f d      YZ& d! e j f d"     YZ' d# e j f d$     YZ( d S(%   i    (   t   absolute_importt   divisiont   print_functionN(   t   utf8(   t   unittest(	   t   raise_exc_infot   Configurablet   exec_int   ArgReplacert   timedelta_to_secondst   import_objectt   re_unescapet   is_finalizingt   PY3(   t   StringIOt   RaiseExcInfoTestc           B` s   e  Z d    Z RS(   c         ` s   d t  f   f d     Y  y   d d   Wn   k
 rN t j   } n Xy t |  |  j d  Wn'   k
 r } |  j | | d  n Xd  S(   Nt   TwoArgExceptionc           ` s   e  Z   f d    Z RS(   c         ` s*   t    |   j   | | |  _ |  _ d  S(   N(   t   supert   __init__t   at   b(   t   selfR   R   (   R   (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR      s    (   t   __name__t
   __module__R   (    (   R   (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR      s   i   i   s   didn't get expected exception(   t	   Exceptiont   syst   exc_infoR   t   failt   assertIs(   R   R   t   e(    (   R   s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_two_arg_exception   s    
(   R   R   R   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR      s   t   TestConfigurablec           B` s&   e  Z e d     Z e d    Z RS(   c         C` s   t  S(   N(   R   (   t   cls(    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   configurable_base+   s    c         C` s   t  S(   N(   t   TestConfig1(   R    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   configurable_default/   s    (   R   R   t   classmethodR!   R#   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR   *   s   R"   c           B` s   e  Z d d d   Z RS(   c         C` s   | |  _  | |  _ d  S(   N(   R   t   pos_arg(   R   R%   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt
   initialize5   s    	N(   R   R   t   NoneR&   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR"   4   s   t   TestConfig2c           B` s   e  Z d d d   Z RS(   c         C` s   | |  _  | |  _ d  S(   N(   R   R%   (   R   R%   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR&   ;   s    	N(   R   R   R'   R&   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR(   :   s   t   TestConfig3c           B` s&   e  Z e d     Z e d    Z RS(   c         C` s   t  S(   N(   R)   (   R    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR!   B   s    c         C` s   t  S(   N(   t   TestConfig3A(   R    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR#   F   s    (   R   R   R$   R!   R#   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR)   @   s   R*   c           B` s   e  Z d d   Z RS(   c         C` s   | |  _  d  S(   N(   R   (   R   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR&   L   s    N(   R   R   R'   R&   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR*   K   s   t   TestConfig3Bc           B` s   e  Z d d   Z RS(   c         C` s   | |  _  d  S(   N(   R   (   R   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR&   Q   s    N(   R   R   R'   R&   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR+   P   s   t   ConfigurableTestc           B` sY   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 RS(	   c         C` s"   t  j   |  _ t j   |  _ d  S(   N(   R   t   _save_configurationt   savedR)   t   saved3(   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   setUpV   s    c         C` s$   t  j |  j  t j |  j  d  S(   N(   R   t   _restore_configurationR.   R)   R/   (   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   tearDownZ   s    c         C` sn   |  j  t   t  |  j  t   t  t d d  } |  j | j d  t d d  } |  j | j d  d  S(   NR   i   R   i   (   t   assertIsInstanceR"   R(   t   assertEqualR   R   (   R   t   obj(    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   checkSubclasses^   s    c         C` sl   t    } |  j | t  |  j | j d   t  d d  } |  j | t  |  j | j d  |  j   d  S(   NR   i   (   R   R3   R"   R   R   R'   R4   R6   (   R   R5   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_defaulti   s    	c         C` sy   t  j t  t    } |  j | t  |  j | j d   t  d d  } |  j | t  |  j | j d  |  j   d  S(   NR   i   (	   R   t	   configureR(   R3   R   R   R'   R4   R6   (   R   R5   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_config_classt   s    	c         C` s±   t  j d  d d t    } |  j | t  |  j | j d  t  d d d } |  j | t  |  j | j d  |  j | j d  |  j   t   } |  j	 | j d   d  S(   NR   i   i*   i   (
   R   R8   R'   R3   R"   R4   R   R%   R6   R   (   R   R5   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_config_args   s    	
	c         C` s±   t  j t d d t    } |  j | t  |  j | j d  t  d d d } |  j | t  |  j | j d  |  j | j d  |  j   t   } |  j | j d   d  S(   NR   i   i*   i   (
   R   R8   R(   R3   R4   R   R%   R6   R   R'   (   R   R5   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_config_class_args   s    	
	c         C` s   t  j t d d t    } |  j | t  |  j | j d  t  j t  t j t d d t    } |  j | t  |  j | j d  d  S(   NR   i   R   i   (	   R   R8   R)   R3   R*   R4   R   R+   R   (   R   R5   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_config_multi_level    s    		c         C` s   t    } |  j | t  t  j t  t    } |  j | t  t   } |  j | t  t j t  t   } |  j | t  t    } |  j | t  d  S(   N(   R)   R3   R*   R8   R+   R   R"   R(   (   R   R5   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_config_inner_level¬   s    					(   R   R   R0   R2   R6   R7   R9   R:   R;   R<   R=   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR,   U   s   								t   UnicodeLiteralTestc           B` s   e  Z d    Z RS(   c         C` s   |  j  t d  d  d  S(   Nu   Γ©s   Γ©(   R4   R   (   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_unicode_escapesΓ   s    (   R   R   R?   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR>   Β   s   t
   ExecInTestc           B` s2   e  Z e j e j e j   k d   d    Z RS(   s   no testable future importsc         C` sI   t    } t d d | t d t d |   |  j | j   d  d  S(   Nt   hellot   files   print >> f, "world"t   fs   hello
world
(   R   t   printR   t   dictR4   t   getvalue(   R   RC   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_no_inherit_futureΚ   s    	(	   R   R   R   t   skipIfR   t   version_infoR   t   getMandatoryReleaseRG   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR@   Η   s   t   ArgReplacerTestc           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C` s%   d  d  d  } t | d  |  _ d  S(   Nc         S` s   d  S(   N(    (   t   xt   yt   callbackt   z(    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   functionΧ   s    RN   (   R'   R   t   replacer(   R   RP   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR0   Φ   s    c         C` sf   d } t    } |  j |  j j | |  d   |  j |  j j d | |  d  d t  d d  f  d  S(   Ni   i   t   newRN   (   i   i   (   i   i   (   RE   R   RQ   t   get_old_valueR'   R4   t   replace(   R   t   argst   kwargs(    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_omittedΫ   s
    	c         C` sl   d } t    } |  j |  j j | |  d  |  j |  j j d | |  d d d d d g t    f  d  S(   Ni   i   t   oldi   RR   (   i   i   RX   i   (   RE   R4   RQ   RS   RT   (   R   RU   RV   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_positionβ   s
    	c         C` s   d	 } t  d d d d d d  } |  j |  j j | |  d  |  j |  j j d | |  d d
 t  d d d d d d  f  d  S(   Ni   RM   i   RN   RX   RO   i   RR   (   i   (   i   (   RE   R4   RQ   RS   RT   (   R   RU   RV   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_keywordι   s
    (   R   R   R0   RW   RY   RZ   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyRK   Υ   s   			t   TimedeltaToSecondsTestc           B` s   e  Z d    Z RS(   c         C` s,   t  j d d  } |  j t |  d  d  S(   Nt   hoursi   g      ¬@(   t   datetimet	   timedeltaR4   R	   (   R   t
   time_delta(    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_timedelta_to_secondsς   s    (   R   R   R`   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyR[   ρ   s   t   ImportObjectTestc           B` s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C` s   |  j  t d  t  d  S(   Ns   tornado.escape.utf8(   R   R
   R   (   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_import_memberψ   s    c         C` s   |  j  t d  t  d  S(   Nu   tornado.escape.utf8(   R   R
   R   (   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_import_member_unicodeϋ   s    c         C` s   |  j  t d  t j  d  S(   Ns   tornado.escape(   R   R
   t   tornadot   escape(   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_import_moduleώ   s    c         C` s   |  j  t d  t j  d  S(   Nu   tornado.escape(   R   R
   Rd   Re   (   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_import_module_unicode  s    (   R   R   Rb   Rc   Rf   Rg   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyRa   χ   s   			t   ReUnescapeTestc           B` s   e  Z d    Z d   Z RS(   c         C` s:   d } x- | D]% } |  j  | t t j |    q Wd  S(   Ns   /favicon.icos
   index.htmls   Hello, World!s   !$@#%;(   s   /favicon.icos
   index.htmls   Hello, World!s   !$@#%;(   R4   R   t   reRe   (   R   t   test_stringst   string(    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   test_re_unescape	  s       c         C` sd   |  j  t   t d  Wd  QX|  j  t   t d  Wd  QX|  j  t   t d  Wd  QXd  S(   Ns   \ds   \bs   \Z(   t   assertRaisest
   ValueErrorR   (   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt.   test_re_unescape_raises_error_on_invalid_input  s    (   R   R   Rl   Ro   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyRh     s   	
t   IsFinalizingTestc           B` s   e  Z d    Z RS(   c         C` s   |  j  t    d  S(   N(   t   assertFalseR   (   R   (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt
   test_basic  s    (   R   R   Rr   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyRp     s   ()   t
   __future__R    R   R   Ri   R   R]   t   tornado.escapeRd   R   t   tornado.test.utilR   t   tornado.utilR   R   R   R   R	   R
   R   R   R   t   ioR   t	   cStringIOt   TestCaseR   R   R"   R(   R)   R*   R+   R,   R>   R@   RK   R[   Ra   Rh   Rp   (    (    (    s5   lib/python2.7/site-packages/tornado/test/util_test.pyt   <module>   s2   @
m