ó
ÐH/\c           @   s‘  d  d l  Z  d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d	 l m Z d d
 l m	 Z	 d d l m
 Z
 d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d  l m  Z  d d! l m! Z! d d" l m" Z" d d# l m# Z# d d$ l m$ Z$ d d% l m% Z% d d& l m& Z& d d' l m' Z' d d( l m( Z( d d) l m) Z) d d* l m* Z* d d+ l m+ Z+ d d, l m, Z, d d- l m- Z- d d. l m. Z. d d/ l m/ Z/ d d0 l m0 Z0 d d1 l1 m2 Z2 d d2 l3 m4 Z4 d d3 l5 m6 Z6 d d4 l5 m7 Z7 d d5 l5 m8 Z8 d d6 l5 m9 Z9 d d7 l5 m: Z: d d8 l5 m; Z; e  j< Z< d d9 l= m> Z> d  d l? Z@ e@ j= jA e> ƒ d d: lB mC ZC d d; lB mD ZD d d< lE mF ZF d d= lE mG ZG d d> lH mI ZI d d? lJ mK ZK e  jI ZL d d@ lM mN ZN d dA lM mO ZO d dB lM mP ZP d dC lM mQ ZQ dD „  ZR y d  dE l  mS ZS Wn eT k
 r†d  d lS ZS n XeS ZS d S(F   iÿÿÿÿNi   (   t   VERBOSE(   t   WIN(   t   LINUX(   t   LIBUV(   t   CFFI_BACKEND(   t   DEBUG(   t   RUN_LEAKCHECKS(   t   RUN_COVERAGE(   t   PY2(   t   PY3(   t   PY34(   t   PY36(   t   PY37(   t   PYPY(   t   PYPY3(   t   CPYTHON(   t   PLATFORM_SPECIFIC_SUFFIXES(   t   NON_APPLICABLE_SUFFIXES(   t   SHARED_OBJECT_EXTENSION(   t   RUNNING_ON_TRAVIS(   t   RUNNING_ON_APPVEYOR(   t   RUNNING_ON_CI(   t   RESOLVER_NOT_SYSTEM(   t   RESOLVER_DNSPYTHON(   t   RESOLVER_ARES(   t   EXPECT_POOR_TIMER_RESOLUTION(   t   CONN_ABORTED_ERRORS(   t   skipOnWindows(   t   skipOnAppVeyor(   t   skipOnCI(   t   skipOnPyPy3OnCI(   t
   skipOnPyPy(   t   skipOnPyPyOnCI(   t   skipOnPyPy3(   t   skipIf(   t
   skipUnless(   t   skipOnLibev(   t   skipOnLibuv(   t   skipOnLibuvOnWin(   t   skipOnLibuvOnCI(   t   skipOnLibuvOnCIOnPyPy(   t   skipOnLibuvOnPyPyOnWin(   t   skipOnPurePython(   t   skipWithCExtensions(   t   skipOnLibuvOnTravisOnCPython27(   t
   skipOnPy37(   t   ExpectedException(   t   ignores_leakcheck(   t   LARGE_TIMEOUT(   t   DEFAULT_LOCAL_HOST_ADDR(   t   DEFAULT_LOCAL_HOST_ADDR6(   t   DEFAULT_BIND_ADDR(   t   DEFAULT_SOCKET_TIMEOUT(   t   DEFAULT_XPC_SOCKET_TIMEOUT(   t   QuietHub(   t   bind_and_listen(   t   tcp_listener(   t   get_number_open_files(   t   get_open_files(   t   TestCase(   t   walk_modules(   t   reraiseFlakyTestTimeout(   t   reraiseFlakyTestRaceCondition(   t   reraises_flaky_timeout(   t   reraises_flaky_race_conditionc          C   s#   d d l  }  t r |  j ƒ  n  d S(   s3   Collect garbage if necessary for destructors to runiÿÿÿÿN(   t   gcR   t   collect(   RA   (    (    s6   lib/python2.7/site-packages/gevent/testing/__init__.pyt   gc_collect_if_needed~   s    (   t   mock(U   t   unittestt   sysinfoR    R   R   R   R   R   R   R   R   R	   R
   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   t   skippingR   R   R   R   R   R    R!   R"   R#   R$   R%   R&   R'   R(   R)   R*   R+   R,   R-   t	   exceptionR.   t	   leakcheckR/   t   paramsR0   R1   R2   R3   R4   R5   t   maint   hubR6   t
   gevent.hubt   geventt   set_default_hub_classt   socketsR7   R8   t	   openfilesR9   R:   t   testcaseR;   t   modulesR<   t   BaseTestCaset   flakyR=   R>   R?   R@   RC   RD   t   ImportError(    (    (    s6   lib/python2.7/site-packages/gevent/testing/__init__.pyt   <module>   s–   			