Your IP : 18.226.165.234
B
��`�
� @ sP d dl mZ d dlmZmZ ddlmZ ddlmZ dd� Z
dd � Zd
d� ZdS )
� )�absolute_import)�!MultipartInvariantViolationDefect�StartBoundaryNotFoundDefect� )�HeaderParsingError)�http_clientc C sf y| � � S tk
r Y nX y| jS tk
r8 Y nX y
| jdkS tk
rX Y nX td��dS )zt
Checks whether a given file-like object is closed.
:param obj:
The file-like object to check.
Nz)Unable to determine whether fp is closed.)Zisclosed�AttributeError�closed�fp�
ValueError)�obj� r
�F/opt/alt/python37/lib/python3.7/site-packages/urllib3/util/response.py�is_fp_closed s
r c C s� t | tj�std�t| ����t| dd�}t| dd�}d}|r^| �� s^|� }t |tt f�r^|}|rpdd� |D �}|sx|r�t
||d��dS )a>
Asserts whether all headers have been successfully parsed.
Extracts encountered errors from the result of parsing headers.
Only works on Python 3.
:param http.client.HTTPMessage headers: Headers to verify.
:raises urllib3.exceptions.HeaderParsingError:
If parsing errors are found.
z"expected httplib.Message, got {0}.�defectsN�get_payloadc S s g | ]}t |ttf�s|�qS r
)�
isinstancer r )�.0�defectr
r
r �
<listcomp>S s z)assert_header_parsing.<locals>.<listcomp>)r �
unparsed_data)r �httplibZHTTPMessage� TypeError�format�type�getattr�is_multipart�bytes�strr )�headersr r r �payloadr
r
r �assert_header_parsing( s
r! c C s$ | j }t|t�r|dkS |�� dkS )z�
Checks whether the request of a response has been a HEAD-request.
Handles the quirks of AppEngine.
:param http.client.HTTPResponse response:
Response to check if the originating request
used 'HEAD' as a method.
� ZHEAD)�_methodr �int�upper)�response�methodr
r
r �is_response_to_head^ s
r( N)
�
__future__r Zemail.errorsr r �
exceptionsr Zpackages.six.movesr r r r! r( r
r
r
r �<module> s 6