Your IP : 216.73.216.213


Current Path : /opt/alt/python38/lib64/python3.8/test/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/test/__pycache__/test_urllib2net.cpython-38.opt-2.pyc

U

i�f�1�@s�ddlZddlmZddlmZddlZddlZddlZddl	Zddl
Z
e�d�dZdd�Z
dd	�Ze�d
ejkd�Zeejjejj�ZGdd
�d
ej�ZGdd�dej�ZGdd�dej�ZGdd�dej�Zedkr�e��dS)�N)�support)�sanepathname2urlZnetwork�<cOsVtd�D]D}z|||�WS|k
rJ}z|}WY�qW5d}~XYqXq|�dS)N�)�range)�func�exc�args�kwargs�i�e�last_exc�r�9/opt/alt/python38/lib64/python3.8/test/test_urllib2net.py�
_retry_thricesrcs��fdd�}|S)Ncst��f|�|�S�N)r)r	r
�rrrr�wrappedsz(_wrap_with_retry_thrice.<locals>.wrappedr)rrrrrr�_wrap_with_retry_thricesrZTRAVISz%bpo-35411: skip FTP test on Travis CIc@seZdZdS)�	AuthTestsN)�__name__�
__module__�__qualname__rrrrr+src@seZdZdd�ZdS)�CloseSocketTestc	CsNtj}t�|��4t|�}|j}|�|j�|��|�|j�W5QRXdSr)	r�
TEST_HTTP_URL�transient_internet�_urlopen_with_retry�fp�assertFalse�closed�close�
assertTrue)�self�urlZresponseZsockrrr�
test_closeTszCloseSocketTest.test_closeN)rrrr$rrrrrRsrc@sdeZdZdd�Zedd��Zdd�Zdd�Zd	d
�Zdd�Z	e
�d
�dd��Zddd�Z
dd�ZdS)�OtherNetworkTestscCsdSrr)r"rrr�setUp`szOtherNetworkTests.setUpcCs&dddtjjfg}|�||���dS)Nzftp://www.pythontest.net/READMEz*ftp://www.pythontest.net/non-existent-file)�urllib�error�URLError�
_test_urls�_extra_handlers)r"�urlsrrr�test_ftpis��zOtherNetworkTests.test_ftpc	Cs�tj}t|d�}zL|�d�|��dttj�	|��ddt
jjfg}|j
||��dd�W5t�|�X|�tt
jjd�dS)N�wz	hi there
zfile:zfile:///nonsensename/etc/passwdT)�retryz./relative_path/to/file)r�TESTFN�open�os�remove�writer r�path�abspathr'r(r)r*r+ZassertRaises�
ValueError�request�urlopen)r"r0�fr,rrr�	test_filers

��zOtherNetworkTests.test_filec	CsFd}t�|��.tj�|�}tj�|�}|�|��d�W5QRXdS)Nz)http://www.pythontest.net/index.html#frag�rrr'r8�Requestr9�assertEqualZgeturl)r"Zurlwith_frag�req�resrrr�test_urlwithfrag�s
�z"OtherNetworkTests.test_urlwithfragc	CsFd}t�|��.tj�|�}tj�|�}|�|��d�W5QRXdS)Nz*http://www.pythontest.net/redir/with_frag/z)http://www.pythontest.net/elsewhere/#fragr<)r"Zredirect_url_with_fragr?r@rrr�test_redirect_url_withfrag�s
�z,OtherNetworkTests.test_redirect_url_withfragc	Cs�tj}t�|��ztj��}tj�|�}|�|���|�	|�|�
|���|�
|�d��|�dd�|�	|�|�
|�d�d�W5QRXdS)Nz
User-agentz
User-Agentz
Test-Agent)rrrr'r8�build_openerr=rZheader_itemsr1r!Z
has_headerZ
add_headerr>Z
get_header)r"r#Zopenerr8rrr�test_custom_headers�s


z%OtherNetworkTests.test_custom_headersz XXX: http://www.imdb.com is gonecCs�d}t�|��xztj�|��}W5QRXWn,tk
rX}z|�d�W5d}~XYnX|�|�tj�|�}|��}|�|�W5QRXdS)Nzhttp://www.imdb.comzOurlopen failed for site not sending                            Connection:close)	rrr'r8r9r7Zfailr!�read)r"ZURLr@rr?rrr�test_sites_no_connection_close�s
z0OtherNetworkTests.test_sites_no_connection_closeTcCs�ddl}ddl}|�d�j}tjj|�j}|r<t|tj	j
�}|D�]B}|j|d���*t|t
�rl|\}}	}
nd}	}
t�|���z|||	t�}WnNtk
r�}z0|
r�d|
||	t|�|f}
|�||
|
�n�W5d}~XYn�XzRtj�Btj�0tj�|��}|dt|��W5QRXW5QRXW5QRXWn*tjk
�r\td|tjd�YnX|��W5QRX|�d�W5QRXq@dS)	NrZtest_urllib2)r#z5Didn't get expected error(s) %s for %s %s, got %s: %sz
read %d bytesz
<timeout: %s>)�fileg�������?) �time�loggingZ	getLogger�debugr'r8rCr1rr(r)ZsubTest�
isinstance�tuplerr�TIMEOUT�OSError�typeZassertIsInstanceZtime_outZsocket_peer_resetZioerror_peer_resetrE�len�socket�timeout�print�sys�stderrr �sleep)r"r,�handlersr/rHrIrJr9r#r?Zexpected_errr:�err�msgZbufrrrr*�sB

���2zOtherNetworkTests._test_urlscCs2g}tj��}|�|j�|�d�|�|�|S)N�)r'r8ZCacheFTPHandler�
addCleanupZclear_cacheZ
setTimeout�append)r"rWZcfhrrrr+�s


z!OtherNetworkTests._extra_handlersN)T)rrrr&�skip_ftp_test_on_travisr-r;rArBrD�unittest�skiprFr*r+rrrrr%_s	
-


'r%c@s`eZdZdd�Zdd�Zdd�Zdd�Zd	Zed
d��Z	edd
��Z
edd��Zedd��ZdS)�TimeoutTestc	CsZ|�t���tj}tj|dd��.t|�}|�|j�|�|j	j
j���W5QRXdS�N�rR)
�assertIsNonerQ�getdefaulttimeoutrrrrr[r r�raw�_sock�
gettimeout�r"r#�urrr�test_http_basicszTimeoutTest.test_http_basicc
Cst|�t���tj}t�|��Lt�d�zt|�}|�|j	�W5t�d�X|�
|jjj
��d�W5QRXdS�Nr)rcrQrdrrr�setdefaulttimeoutrr[r r>rrerfrgrhrrr�test_http_default_timeouts
z%TimeoutTest.test_http_default_timeoutc
Csv|�t���tj}t�|��Nt�d�zt|dd�}|�|j	�W5t�d�X|�|j
jj�
��W5QRXdS�Nrrb)rcrQrdrrrrlrr[r rrerfrgrhrrr�test_http_no_timeouts
z TimeoutTest.test_http_no_timeoutc	CsNtj}t�|��4t|dd�}|�|j�|�|jjj	�
�d�W5QRXdS)N�xrb)rrrrr[r r>rrerfrgrhrrr�test_http_timeout$s
zTimeoutTest.test_http_timeoutzftp://www.pythontest.net/c	CsZ|�t���tj|jdd��2t|j�}|�|j�|�|j	j	j
j���W5QRXdSra)
rcrQrdrr�FTP_HOSTrr[r rrerfrg�r"rirrr�test_ftp_basic-s

zTimeoutTest.test_ftp_basicc
Cst|�t���t�|j��Pt�d�zt|j�}|�|j	�W5t�d�X|�
|jjjj
��d�W5QRXdSrk)rcrQrdrrrrrlrr[r r>rrerfrgrsrrr�test_ftp_default_timeout5s

z$TimeoutTest.test_ftp_default_timeoutc
Csv|�t���t�|j��Rt�d�zt|jdd�}|�|j	�W5t�d�X|�|j
j
jj�
��W5QRXdSrn)rcrQrdrrrrrlrr[r rrerfrgrsrrr�test_ftp_no_timeoutAs
zTimeoutTest.test_ftp_no_timeoutc	CsNt�|j��8t|jdd�}|�|j�|�|jjjj	�
�d�W5QRXdSrn)rrrrrr[r r>rrerfrgrsrrr�test_ftp_timeoutMszTimeoutTest.test_ftp_timeoutN)
rrrrjrmrorqrrr]rtrurvrwrrrrr`s


r`�__main__)r^ZtestrZtest.test_urllib2rr2rQZurllib.errorr'Zurllib.requestrTZrequiresrMrrZskipIf�environr]r8r9r(r)rZTestCaserrr%r`r�mainrrrr�<module>s0
	��'
%R