o
    tPf                     @   s  d dl Z ddlmZ d dlZeje zd dlZW n	 ey#   Y nw e  zd dl	m
Z
 W n	 ey9   Y nw e
j  [
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-m0Z0 dd'l-m1Z1 dd(l-m2Z2 dd)l-m3Z3 dd*l-m4Z4 dd+l-m5Z5 dd,l-m6Z6 dd-l-m7Z7 dd.l-m8Z8 dd/l-m9Z9 dd0l-m:Z: dd1l-m;Z; dd2l-m<Z< dd3l-m=Z= dd4l-m>Z> dd5l-m?Z? dd6l-m@Z@ dd7l-mAZA dd8l-mBZB dd9l-mCZC dd:l-mDZD dd;l-mEZE dd<l-mFZF dd=l-mGZG dd>l-mHZH dd?lImJZJ dd@lKmLZL ddAlMmNZN ddBlMmOZO ddClMmPZP ddDlMmQZQ ddElMmRZR ddFlMmSZS ddGlMmTZT ddHlMmUZU e jVZVe jWZWddIlXmYZY ddJlXmZZZ ddKl[m\Z\ ddLl[m]Z] ddMl^m_Z_ ddNl`maZa e j_ZbddOlcmdZd ddPlcmeZe ddQlcmfZf ddRlcmgZg dSdT Zhzd dUl miZi W n# eyL   zd dliZiW n eyI   G dVdW dWejZiY nw Y nw eiZid dXlkmlZl dS )Y    N   )QuietHub)	_corecffi)VERBOSE)WIN)LINUX)OSX)LIBUV)CFFI_BACKEND)DEBUG)RUN_LEAKCHECKS)RUN_COVERAGE)PY2)PY3)PY36)PY37)PY38)PY39)PY310)PYPY)PYPY3)CPYTHON)PLATFORM_SPECIFIC_SUFFIXES)NON_APPLICABLE_SUFFIXES)SHARED_OBJECT_EXTENSION)RUNNING_ON_TRAVIS)RUNNING_ON_APPVEYOR)RUNNING_ON_CI)RESOLVER_NOT_SYSTEM)RESOLVER_DNSPYTHON)RESOLVER_ARES)resolver_dnspython_available)EXPECT_POOR_TIMER_RESOLUTION)CONN_ABORTED_ERRORS)skipOnWindows)skipOnAppVeyor)skipOnCI)skipOnPyPy3OnCI)
skipOnPyPy)skipOnPyPyOnCI)skipOnPyPyOnWindows)skipOnPyPy3)skipIf)
skipUnless)skipOnLibev)skipOnLibuv)skipOnLibuvOnWin)skipOnLibuvOnCI)skipOnLibuvOnCIOnPyPy)skipOnLibuvOnPyPyOnWin)skipOnPurePython)skipWithCExtensions)skipOnLibuvOnTravisOnCPython27)
skipOnPy37)skipOnPy310)skipOnPy312)	skipOnPy3)skipWithoutResource)skipWithoutExternalNetwork)skipOnManylinux)skipOnMacOnCI)ExpectedException)ignores_leakcheck)LARGE_TIMEOUT)DEFAULT_LOCAL_HOST_ADDR)DEFAULT_LOCAL_HOST_ADDR6)DEFAULT_BIND_ADDR)DEFAULT_BIND_ADDR_TUPLE)DEFAULT_CONNECT_HOST)DEFAULT_SOCKET_TIMEOUT)DEFAULT_XPC_SOCKET_TIMEOUT)bind_and_listen)tcp_listener)get_number_open_files)get_open_files)TestCase)walk_modules)reraiseFlakyTestTimeout)reraiseFlakyTestRaceCondition)reraises_flaky_timeout)reraises_flaky_race_conditionc                  C   s   ddl } tr|   dS dS )z3Collect garbage if necessary for destructors to runr   N)gcr   collect)rS    rU   X/var/www/html/humari/django-venv/lib/python3.10/site-packages/gevent/testing/__init__.pygc_collect_if_needed   s   rW   )mockc                   @   s   e Zd Zedd ZdS )rX   c                 C   s
   t | S )N)unittestskip)reasonrU   rU   rV   patch   s   
z
mock.patchN)__name__
__module____qualname__staticmethodr\   rU   rU   rU   rV   rX      s    rX   )verify)mrY   hubr   
gevent.hubgeventset_default_hub_classfaulthandlerImportErrorenablegevent.libuvr   libgevent_test_setup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   r    r!   r"   r#   skippingr$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   	exceptionr?   	leakcheckr@   paramsrA   rB   rC   rD   rE   rF   rG   rH   mainSkipTestsocketsrI   rJ   	openfilesrK   rL   testcaserM   modulesrN   BaseTestCaseflakyrO   rP   rQ   rR   rW   rX   objectzope.interfacera   rU   rU   rU   rV   <module>   s   	
	