Ñò
‘à"Ic        	   @   s­   d  d k  Z  d  d k l Z d  d k l Z d  d k Z d  d k Z d  d k Z d e f d „  ƒ  YZ	 d „  Z
 d e  i f d „  ƒ  YZ d	 „  Z e d
 j o e ƒ  n d S(   iÿÿÿÿN(   t   DocTestSuite(   t   test_supportt   Weakc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    s6   /mit/python/lib/python2.6/test/test_threading_local.pyR      s   c         C   s,   t  ƒ  } | |  _ | i t i | ƒ ƒ d  S(   N(   R   t   weakt   appendt   weakreft   ref(   t   localt   weaklistR   (    (    s6   /mit/python/lib/python2.6/test/test_threading_local.pyt   target   s    		t   ThreadingLocalTestc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s+   |  i  d ƒ |  i  d ƒ |  i  d ƒ d  S(   Ni   i2   id   (   t   _local_refs(   t   self(    (    s6   /mit/python/lib/python2.6/test/test_threading_local.pyt   test_local_refs   s    c   
      C   sK  t  i ƒ  } g  } xF t | ƒ D]8 } t  i d t d | | f ƒ } | i ƒ  | i ƒ  q W~ t i ƒ  |  i	 t
 | ƒ | ƒ g  } | D]! } | ƒ  d  j o | | q‰ q‰ ~ } |  i	 t
 | ƒ | d ƒ d  | _ t i ƒ  g  }	 | D]! } | ƒ  d  j o |	 | që që ~	 } |  i t
 | ƒ | d | f j | t
 | ƒ f ƒ d  S(   NR   t   argsi   (   t	   threadingR	   t   ranget   ThreadR   t   startt   joint   gct   collectt   assertEqualt   lent   Nonet   someothervart   assert_(
   R   t   nR	   R
   t   it   tt   _[1]R   t   deadlistt   _[2](    (    s6   /mit/python/lib/python2.6/test/test_threading_local.pyR      s      

5	
5c      	      s´   d d  k  ‰ d t i f ‡ f d †  ƒ  Y} | ƒ  ‰ ‡  ‡ f d †  } g  } xF t d ƒ D]8 } t i d | d | f ƒ } | i ƒ  | i | ƒ qY Wx | D] } | i ƒ  qœ Wd  S(   Niÿÿÿÿt   Localc              s   e  Z ‡  f d  †  Z RS(   c            s   ˆ  i  d ƒ d  S(   Ng{®Gáz„?(   t   sleep(   R   (   t   time(    s6   /mit/python/lib/python2.6/test/test_threading_local.pyt   __init__4   s    (   R   R   R&   (    (   R%   (    s6   /mit/python/lib/python2.6/test/test_threading_local.pyR#   3   s   c            s    |  ˆ _  ˆ  i ˆ i  |  ƒ d  S(   N(   t   xR   (   R   (   R   R	   (    s6   /mit/python/lib/python2.6/test/test_threading_local.pyt   f8   s    	i
   R   R   (   R%   R   R	   R   R   R   R   R   (   R   R#   R(   t   threadsR   R   (    (   R   R%   R	   s6   /mit/python/lib/python2.6/test/test_threading_local.pyt   test_derived-   s    	 
 (   R   R   R   R   R*   (    (    (    s6   /mit/python/lib/python2.6/test/test_threading_local.pyR      s   		c             sÈ   t  i ƒ  }  |  i t d ƒ ƒ |  i t  i t ƒ ƒ y d d k l ‰ Wn t j
 o nZ Xd d  k	 ‰  ˆ  i
 ‰ ‡  ‡ f d †  } ‡  ‡ f d †  } |  i t d d | d | ƒƒ t i |  ƒ d  S(   Nt   _threading_localiÿÿÿÿ(   t   _localc            s   ˆ ˆ  _  d  S(   N(   R	   (   t   test(   R+   R,   (    s6   /mit/python/lib/python2.6/test/test_threading_local.pyt   setUpS   s    c            s   ˆ ˆ  _  d  S(   N(   R	   (   R-   (   R+   t
   local_orig(    s6   /mit/python/lib/python2.6/test/test_threading_local.pyt   tearDownU   s    R.   R0   (   t   unittestt	   TestSuitet   addTestR    t	   makeSuiteR   t   threadR,   t   ImportErrorR+   R	   R   t   run_unittest(   t   suiteR.   R0   (    (   R+   R,   R/   s6   /mit/python/lib/python2.6/test/test_threading_local.pyt	   test_mainG   s    	t   __main__(   R1   t   doctestR    R-   R   R   R   R   t   objectR   R   t   TestCaseR   R9   R   (    (    (    s6   /mit/python/lib/python2.6/test/test_threading_local.pyt   <module>   s   	7	