ó
úR‹_c           @` s  d  d l  m Z m Z m Z d  d l Z d  d l Z d  d l j Z d  d l	 m
 Z
 d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ d e f d	 „  ƒ  YZ e j d
 ƒ d e f d „  ƒ  Yƒ Z e j d ƒ d e j f d „  ƒ  Yƒ Z d e j f d „  ƒ  YZ e d k re j ƒ  n  d S(   i    (   t   absolute_importt   print_functiont   divisionN(   t   coret   TestCorec           B` s   e  Z d  „  Z RS(   c         C` sf   t  j ƒ  } |  j | t ƒ |  j | ƒ t  j ƒ  } |  j | t ƒ |  j | ƒ |  j | | ƒ d  S(   N(   R   t   get_versiont   assertIsInstancet   strt
   assertTruet   get_header_versiont   assertEqual(   t   selft   versiont   header_version(    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   test_get_version   s    (   t   __name__t
   __module__R   (    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyR      s   t   TestWatchersc           B` sn   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z e j d ƒ e j	 d ƒ d „  ƒ ƒ Z
 d „  Z d	 „  Z RS(
   c         C` s
   t  j ƒ  S(   N(   R   t   loop(   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   _makeOne   s    c         C` s   | j  ƒ  d  S(   N(   t   destroy(   R   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt
   destroyOne   s    c         C` s   |  j  ƒ  |  _ d  S(   N(   R   R   (   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   setUp   s    c         C` s   |  j  |  j ƒ |  ` d  S(   N(   R   R   (   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   tearDown"   s    c         C` sH  t  j d k r$ t t f } t } n t } t } |  j | ƒ  |  j j d d ƒ Wd  QXt	 t
 d ƒ r— |  j t ƒ  |  j j d t
 j ƒ Wd  QXn  | sD|  j j d t
 j ƒ } d | _ |  j | j d ƒ t
 j | _ t	 t
 d ƒ s|  j t
 j | j ƒ d ƒ n |  j t
 j | j ƒ d ƒ | j d	 „  ƒ | j ƒ  n  d  S(
   Nt   win32iÿÿÿÿi   t   TIMERi   t   libuvs   WRITE|_IOFDSETt   WRITEc           S` s   d  S(   N(   t   None(    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   <lambda>G   t    (   t   syst   platformt   IOErrort
   ValueErrort   Truet   Falset   assertRaisesR   t   iot   hasattrR   R   t   READt   fdR
   R   t   eventst   _events_to_strt   startt   close(   R   t   ErrorR   R&   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   test_io&   s*    		s   libuv-specifics!   Destroying the loop somehow failsc         C` sd  d d  l  } | j  ƒ  } | j ƒ  } |  j j | t j ƒ } |  j j | t j ƒ } zê | j } | j d „  ƒ |  j	 | j
 t j ƒ | j d „  ƒ |  j	 | j
 t j t j Bƒ | j ƒ  |  j	 | j
 t j ƒ | j d „  ƒ |  j	 | j
 t j t j Bƒ | j ƒ  |  j	 | j
 t j ƒ | j ƒ  |  j	 | j
 d ƒ Wd  | j ƒ  | j ƒ  | j ƒ  Xd  S(   Ni    c           S` s   d  S(   N(   R   (    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyR   X   R   c           S` s   d  S(   N(   R   (    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyR   [   R   c           S` s   d  S(   N(   R   (    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyR   a   R   (   t   sockett   filenoR   R&   R   R(   R   t   _watcher_refR,   R
   R*   t   stopR-   (   R   R0   t   sockR)   t   readt   writet   real_watcher(    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   test_io_multiplex_eventsJ   s,    	




c         C` s-   |  j  t ƒ  |  j j d d ƒ Wd  QXd  S(   Ni   iÿÿÿÿ(   R%   R"   R   t   timer(   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   test_timer_constructorn   s    c         C` s*   |  j  t ƒ  |  j j d ƒ Wd  QXd  S(   Niè  (   R%   R"   R   t   signal(   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   test_signal_constructorr   s    (   R   R   R   R   R   R   R/   t	   greentestt   skipOnLibevt   skipOnWindowsR8   R:   R<   (    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyR      s   					$#	t   TestWatchersDefaultc           B` s   e  Z d  „  Z d „  Z RS(   c         C` s   t  j d t ƒ S(   Nt   default(   R   R   R#   (   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyR   x   s    c         C` s   d  S(   N(    (   R   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyR   {   s    (   R   R   R   R   (    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyR@   v   s   	s:  This crashes with PyPy 5.10.0, only on Windows. See https://ci.appveyor.com/project/denik/gevent/build/1.0.1380/job/lrlvid6mkjtyrhn5#L1103 It has also timed out, but only on Appveyor CPython 3.6; local CPython 3.6 does not. See https://ci.appveyor.com/project/denik/gevent/build/1.0.1414/job/yn7yi8b53vtqs8lw#L1523t   TestWatchersDefaultDestroyedc           B` s   e  Z d  „  Z RS(   c         C` s/   t  j d t ƒ } | j ƒ  ~ t  j d t ƒ S(   NRA   (   R   R   R#   R   (   R   t   l(    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyR   ‡   s    
(   R   R   R   (    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyRB   €   s   s   Tests for libev-only functionst	   TestLibevc           B` s   e  Z d  „  Z RS(   c         C` sú   t  j d k r4 |  j t j d d t ƒj d ƒ n  |  j t j d d t ƒj d ƒ |  j t j d  ƒ d ƒ |  j t j d d g ƒ t j
 t j Bƒ |  j t j t j t j Bƒ d d	 g ƒ |  j t t j d d
 g ƒ |  j t t j t ƒ  ƒ d  S(   NR   i   RA   t   selecti    t   kqueuet   SELECTt   portt   pollt   blabla(   R   R    R
   R   R   R$   t   backend_intt   backendt   _flags_to_intR   t   BACKEND_KQUEUEt   BACKEND_SELECTt   _flags_to_listt   BACKEND_PORTt   BACKEND_POLLR%   R"   t	   TypeErrort   object(   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   test_flags_conversion‘   s    %"))(   R   R   RU   (    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyRD   Ž   s   t
   TestEventsc           B` s   e  Z d  „  Z d „  Z RS(   c         C` s'   |  j  t j t j t j Bƒ d ƒ d  S(   Ns
   READ|WRITE(   R
   R   R+   R(   R   (   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   test_events_conversionŸ   s    c         C` s6   |  j  t t j ƒ d ƒ |  j  t t j ƒ d ƒ d  S(   Ns   gevent.core.EVENTS(   R
   R   R   t   EVENTSt   repr(   R   (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   test_EVENTS£   s    (   R   R   RW   RZ   (    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyRV      s   	t   __main__(   t
   __future__R    R   R   R   t   unittestt   gevent.testingt   testingR=   t   geventR   t   TestCaseR   R   R@   t   skipOnLibuvOnWinRB   t   skipOnLibuvRD   RV   R   t   main(    (    (    sP   /var/www/syncserver/local/lib/python2.7/site-packages/gevent/tests/test__core.pyt   <module>   s   _
		