o
    ,wi?                     @   s  d dl mZmZmZ d dlZd dlZddlmZ dd Zdd Z	e	Z
e	Ze	Ze	Ze	Ze	Ze	Ze	Ze	Ze	Ze	Zejr<ejne	ZejrDejne	ZejrLejne	ZejrTejne	Zejr\ejne	Zejsdejne	Z e	Z!e	Z"e	Z#e	Z$e	Z%e	Z&ej'rxejZej(r~ejZ
ej)rejZej*rejZej(rejZej+rejZej,rejZej*rejZej'rejZej-rejZej*rejZej.rejne	Z/ej0Z0ej1Z1da2d	d
 Z3dd Z4dd Z5ej6rejZ!ej*rejZ#ej,rejZ$ej'rejZ"ej,rejZ%nejZ&dddZ7dddZ8dS )    )absolute_importprint_functiondivisionN   )sysinfoc                 C   s   | S N )fr   r   T/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/gevent/testing/skipping.py	_identity   s   r   c                 C   s   | sJ t S r   )r   reasonr   r   r
   _do_not_skip   s   r   c                   C   s   t d u r
t d ua t S r   )_has_psutil_processr   get_this_psutil_processr   r   r   r
   _check_psutilo   s   r   c                    s    fdd}|S )Nc                    s`   t | ts| t| fdd}|} | S |   jt|  fdd}| _| S )Nc                     s    st  | i |S r   )unittestSkipTest)argskwargs)r	   	predicater   r   r
   skip_wrapperz   s   
zE_make_runtime_skip_decorator.<locals>.decorator.<locals>.skip_wrapperc                    s(    sd _  _t|  d S )NT)__unittest_skip____unittest_skip_why__r   r   )self)base
base_setUpr   r   r   r
   setUp   s
   
z>_make_runtime_skip_decorator.<locals>.decorator.<locals>.setUp)
isinstancetype	functoolswrapsr   )	test_itemr   r   r   r   )r   r   r	   r
   	decoratorw   s   
z/_make_runtime_skip_decorator.<locals>.decoratorr   )r   r   r$   r   r#   r
   _make_runtime_skip_decoratorv   s   "r%   c                 C   s   d|  } t | tS )Nzpsutil not available: )r%   r   r   r   r   r
   skipWithoutPSUtil   s   
r&    c                    s:   d f }|s
|}n|d | d } fdd}t ||S )NzRequires resource %rz ()c                     s   ddl m}  |   S )Nr   	resources)r'   r*   ensure_setup_resourcesis_resource_enabledr)   resourcer   r
   r      s   z&skipWithoutResource.<locals>.predicate)r%   )r.   r   requiresr   r   r-   r
   skipWithoutResource   s   

r0   c                 C   s
   t d| S )Nnetwork)r0   r   r   r   r
   skipWithoutExternalNetwork   s   
r2   )r'   )9
__future__r   r   r   r    r   r'   r   r   r   	skipOnMacskipOnMacOnCIskipOnWindowsskipOnAppVeyorskipOnCIskipOnManylinux
skipOnPyPyskipOnPyPyOnCIskipOnPyPy3OnCIskipOnPyPy3skipOnPyPyOnWindowsPY3skip	skipOnPy3PY37
skipOnPy37PY310skipOnPy310PY312skipOnPy312PURE_PYTHONskipOnPurePythonskipWithCExtensionsskipOnLibuvskipOnLibuvOnWinskipOnLibuvOnCIskipOnLibuvOnCIOnPyPyskipOnLibuvOnPyPyOnWinskipOnLibevWINOSXRUNNING_ON_APPVEYORRUNNING_ON_CIRUNNING_ON_MANYLINUXPYPYPYPY3RUN_COVERAGEskipUnderCoverageskipIf
skipUnlessr   r   r%   r&   LIBUVr0   r2   r   r   r   r
   <module>   s   %
