
R_c           @  s   d  d l  m Z d  d l Z d  d l Z d  d l Z y d  d l m Z Wn e k
 rc Z d Z n Xd  d l m
 Z
 d  d l j Z e j e d k d  d e j f d     Y Z e d k r e j   n  d S(	   i(   t   print_functionN(   t   Resolver(   t   sockets   Needs ares resolvert   TestTimeoutc           B  s   e  Z d  Z d Z d   Z RS(   i   t    i  c      
     s  t  j  t  j t  j    y   j |  j  Wn^ t  j k
 r } | j t j t j f k st d t	 |  j
   k r t j d   n    n X  f d   } t j |  t d d g d d d d	 d
 |  j d  } |  j t  j d   | j d  Wd  QXd  S(   Ns   permission deniedsG   This test binds on port a port that was already in use or not allowed.
c             s   x t  r   j d  q Wd  S(   Ni'  (   t   Truet   recvfrom(    (   t   listener(    sX   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__ares_timeout.pyt   reader&   s    	t   serverss	   127.0.0.1t   timeoutgMbP?t   triesi   t   udp_portit   ARES_ETIMEOUTs   www.google.com(   R   t   AF_INETt
   SOCK_DGRAMt   bindt   addresst   errort   errnot   EPERMt   EADDRNOTAVAILt   strt   lowert   unittestt   SkipTestt   geventt   spawnR   t   assertRaisesRegext   gaierrort   gethostbyname(   t   selft   exR   t   r(    (   R   sX   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__ares_timeout.pyt   test   s    3(   R   i  (   t   __name__t
   __module__t   __timeout__R   R"   (    (    (    sX   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__ares_timeout.pyR      s   t   __main__(   t
   __future__R    R   R   R   t   gevent.resolver.aresR   t   ImportErrorR    t   NoneR   t   gevent.testingt   testingt	   greentestt   skipIft   TestCaseR   R#   t   main(    (    (    sX   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__ares_timeout.pyt   <module>   s   
		 