
    daf                         d Z ddlZddlZddlZddlZddlmZ ej                  r ej                  d       G d dej                        Zedk(  r ej                          yy)z'Unit tests for code in urllib.response.    N)supportzCannot create socket on WASIc                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)TestResponsec                     t        j                   t         j                  t         j                        | _        | j                  j	                  d      | _        ddd| _        y )Nrbzwww.python.orgclose)Host
Connection)socketAF_INETSOCK_STREAMsockmakefilefptest_headersselfs    4/root/Python-3.12.4/Lib/test/test_urllib_response.pysetUpzTestResponse.setUp   sD    MM&..&2D2DE	))$$T*%5+24    c                 p   t         j                  j                  | j                        | j	                  t
        j                         fd}| j                  | j                  j                          |        | j                  | j                  j                         | j                  t        |       y )Nc                  6    5 } 	 d d d        y # 1 sw Y   y xY wN )spamaddbases    r   fz!TestResponse.test_with.<locals>.f   s      D  s   )urllibresponser   r   assertIsInstancetempfile_TemporaryFileWrapperassertFalseclosed
assertTrueassertRaises
ValueError)r   r   r   s     @r   	test_withzTestResponse.test_with   sw    //))$''2gx'E'EF	 	(	'*a(r   c                     dfd}t         j                  j                  | j                  |      }|j	                          | j                  | j                  j                         | j                         y )NFc                  
    d y )NTr   )closehook_calleds   r   	closehookz1TestResponse.test_addclosehook.<locals>.closehook%   s	    #r   )r   r   addclosehookr   r   r%   r$   )r   r,   r+   s     @r   test_addclosehookzTestResponse.test_addclosehook"   sU     	$ OO00)D	'()r   c                    t         j                  j                  | j                  | j                        }| j                  |j                         | j                         | j                  |j                  | j                         y r   )r   r   addinfor   r   assertEqualinfoheaders)r   r2   s     r   test_addinfozTestResponse.test_addinfo/   sX    &&tww0A0ABd&7&78t'8'89r   c                    d}d}t         j                  j                  | j                  | j                  ||      }| j                  |j                         | j                         | j                  |j                         |       | j                  |j                         |       | j                  |j                  | j                         | j                  |j                  |       | j                  |j                  |       y )Nzhttp://www.python.org   )r   r   
addinfourlr   r   r1   r2   geturlgetcoder3   urlstatus)r   r:   codeinfourls       r   test_addinfourlzTestResponse.test_addinfourl4   s    %//,,TWWd6G6G-0$8):):;)3/*D1$*;*;<c*.r   c                 8    | j                   j                          y r   )r   r   r   s    r   tearDownzTestResponse.tearDown@   s    		r   N)	__name__
__module____qualname__r   r(   r.   r4   r>   r@   r   r   r   r   r      s     4)*:

/r   r   __main__)__doc__r   r!   urllib.responser   unittesttestr   is_wasiSkipTestTestCaser   rA   mainr   r   r   <module>rM      s_    -     
??
(

:
;;48$$ 4l zHMMO r   