Ñò
§§Kc           @   sb   d  d k  Z  d  d k Z d  d k Z d  d k Z d  d k Z d „  Z d e i f d „  ƒ  YZ d S(   iÿÿÿÿNc          C   s(   t  i ƒ  }  z |  i i |  ƒ Wd  Xd  S(   N(   t   greenlett
   getcurrentt   parentt   switch(   t   g(    (    s5   /home/ambroff/code/greenlet/greenlet/tests/test_gc.pyt   _live_greenlet_body   s    t   GCTestsc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s|   d t  i  f d „  ƒ  Y} | ƒ  } | | _ t i | ƒ } t i ƒ  t i o |  i t i ƒ n |  i | ƒ  d  j ƒ d  S(   Nt   circular_greenletc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    s5   /home/ambroff/code/greenlet/greenlet/tests/test_gc.pyR      s   (
   R    t   selft   weakreft   reft   gct   collectt   garbaget   assertFalset
   assertTruet   None(   R
   R   t   o(    (    s5   /home/ambroff/code/greenlet/greenlet/tests/test_gc.pyt   test_circular_greenlet   s    		

c         C   sr   t  i p d  St i t  i  t  i ƒ i ƒ  ƒ } t i ƒ  t i o |  i	 t i ƒ n |  i
 | ƒ  d  j ƒ d  S(   N(   R    t   GREENLET_USE_GCR   R   R   R   R   R   R   R   R   R   (   R
   R   (    (    s5   /home/ambroff/code/greenlet/greenlet/tests/test_gc.pyt   test_dead_circular_ref   s    
!

c         C   so   t  i p d  St i t  i  t ƒ i ƒ  ƒ } t i ƒ  t i o |  i	 t i ƒ n |  i
 | ƒ  d  j ƒ d  S(   N(   R    R   R   R   R   R   R   R   R   R   R   R   (   R
   R   (    (    s5   /home/ambroff/code/greenlet/greenlet/tests/test_gc.pyt   test_live_circular_ref'   s    


(   R   R	   R   R   R   (    (    (    s5   /home/ambroff/code/greenlet/greenlet/tests/test_gc.pyR      s   		(   R   t   syst   unittestR   R    R   t   TestCaseR   (    (    (    s5   /home/ambroff/code/greenlet/greenlet/tests/test_gc.pyt   <module>   s   	