o
    tPf                     @   s  d dl Z d dlmZ d dlZd dlmZ d dlmZ dd ZG dd dej	Z
dd	d
Zdd	d
Zdd	d
ZG dd dejZG dd dejZG dd dejZG dd dejZG dd dejZG dd dejZG dd dejZedkre  dS dS )    N)pywsgi)test__serverc                 C   s   | d dkr|dg  dgS | d dkr|dg  dgS | d dkr.t d |dg  g S | d dkr@t d	 |dg  g S |d
g  g S )N	PATH_INFO/z200 OKs   PONGz/pingz/shortg      ?z/long
   z404 pywsgi WTF?)geventsleep)environstart_response r   a/var/www/html/humari/django-venv/lib/python3.10/site-packages/gevent/tests/test__server_pywsgi.pyapplication
   s    






r   c                   @   s   e Zd ZeeZdS )SimpleWSGIServerN)__name__
__module____qualname__staticmethodr   r   r   r   r   r      s    r   s#   HTTP/1.1 500 Internal Server Error
   
s   
s   

Internal Server Errors   HTTP/1.1 503 Service Unavailable
Connection: close
Content-type: text/plain
Content-length: 31

Service Temporarily Unavailablec                   @   s^   e Zd ZejZeZdZdZ	dZe
dd Ze
dd Ze
dd Ze
d	d
 Ze
dd ZdS )SettingsTFc                 C   sl   |   (}|d | }| |t|tf | |t|tf W d    d S 1 s/w   Y  d S Ns   GET / HTTP/1.0

)makefilewriteread
assertTrue
startswithinternal_error_startendswithinternal_error_endinstconnresultr   r   r   	assert5004   s   

"zSettings.assert500c                 C   sL   |   }|d | }| |t W d    d S 1 sw   Y  d S r   )r   r   r   assertEqualinternal_error503r   r   r   r   	assert503>   s
   

"zSettings.assert503c                 C   s:   |  tj |   W d    d S 1 sw   Y  d S N)assertRaisessockettimeoutassertRequestSucceeded)r   r   r   r   assertPoolFullE   s   
"zSettings.assertPoolFullc                 C   s@   |   }| }| | W d    d S 1 sw   Y  d S r&   )r   r   assertFalser   r   r   r   assertAcceptedConnectionErrorJ   s   
"z&Settings.assertAcceptedConnectionErrorc                 C   s"   t j| |}|dt  |S )Nlog)r   r   fill_default_server_args
setdefaultr   _NoopLog)r   kwargsr   r   r   r/   P   s   z!Settings.fill_default_server_argsN)r   r   r   r   
WSGIServerServerClassr   ServerSubClassclose_socket_detectedrestartabler   r"   r%   r+   r-   r/   r   r   r   r   r   -   s     
	


r   c                   @      e Zd ZeZdS )TestCaseNr   r   r   r   r   r   r   r   r9   W       r9   c                   @   r8   )TestDefaultSpawnNr:   r   r   r   r   r<   Z   r;   r<   c                   @   r8   )TestSSLSocketNotAllowedNr:   r   r   r   r   r=   ]   r;   r=   c                   @   r8   )TestRawSpawnNr:   r   r   r   r   r>   `   r;   r>   c                   @   r8   )TestSSLGetCertificateNr:   r   r   r   r   r?   c   r;   r?   c                   @   r8   )TestPoolSpawnNr:   r   r   r   r   r@   f   r;   r@   __main__)r(   gevent.testingtesting	greentestr   r   gevent.testsr   r   r3   r   replacer   r   r$   r   r9   r<   r=   r>   r?   r@   r   mainr   r   r   r   <module>   s,    *