File: //lib64/python2.7/unittest/test/test_break.pyc
�
t�fc           @   s�  d  d l  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 Z e j e	 e d � d � e j
 e j d k d � e j
 e j d k d � d	 e j f d
 �  �  Y� � � Z
 e j e	 e d � d � e j
 e j d k d � e j
 e j d k d � d e
 f d �  �  Y� � � Z e j e	 e d � d � e j
 e j d k d � e j
 e j d k d � d
 e
 f d �  �  Y� � � Z e j e	 e d � d � e j
 e j d k d � e j
 e j d k d � d e
 f d �  �  Y� � � Z d S(   i����N(   t   StringIOt   kills   Test requires os.killt   win32s   Test cannot run on Windowst   freebsd6s9   Test kills regrtest on freebsd6 if threads have been usedt	   TestBreakc           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 RS(   c         C   sA   t  j t  j � |  _ |  j d  k	 r= t  j  t  j |  j � n  d  S(   N(   t   signalt	   getsignalt   SIGINTt   _default_handlert   int_handlert   None(   t   self(    (    s0   /usr/lib64/python2.7/unittest/test/test_break.pyt   setUp   s    c         C   s8   t  j  t  j |  j � t j �  t j _ d  t j _	 d  S(   N(
   R   R   R   t   weakreft   WeakKeyDictionaryt   unittestt   signalst   _resultsR
   t   _interrupt_handler(   R   (    (    s0   /usr/lib64/python2.7/unittest/test/test_break.pyt   tearDown   s    c         C   s�   t  j t  j � } t j �  |  j t  j t  j � | � y# t j �  } t j | t  j � Wn t	 k
 r{ |  j
 d � n X|  j t j j
 j � d  S(   Ns   KeyboardInterrupt not handled(   R   R   R   R   t   installHandlert   assertNotEqualt   ost   getpidR   t   KeyboardInterruptt   failt
   assertTrueR   R   t   called(   R   t   default_handlert   pid(    (    s0   /usr/lib64/python2.7/unittest/test/test_break.pyt   testInstallHandler   s    
c         C   sm   t  j �  } t  j | � xM t  j j D]2 } | | k r<