
    0hh)                         S r SSKrSSKrSSKrSSKrSSKJr  \R                  (       a  \R                  " S5      e " S S\R                  5      r\S:X  a  \R                  " 5         gg)z'Unit tests for code in urllib.response.    N)supportzCannot create socket on WASIc                   8    \ rS rSrS rS rS rS rS rS r	Sr
g	)
TestResponse   c                     [         R                   " [         R                  [         R                  5      U l        U R                  R	                  S5      U l        SSS.U l        g )Nrbzwww.python.orgclose)Host
Connection)socketAF_INETSOCK_STREAMsockmakefilefptest_headersselfs    B/opt/python-3.13.8/usr/lib/python3.13/test/test_urllib_response.pysetUpTestResponse.setUp   sD    MM&..&2D2DE	))$$T*%5+24    c                 r  ^ [         R                  R                  U R                  5      mU R	                  T[
        R                  5        U4S jnU R                  U R                  R                  5        U" 5         U R                  U R                  R                  5        U R                  [        U5        g )Nc                  @   > T n  S S S 5        g ! , (       d  f       g = fN )spamaddbases    r   f!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_withTestResponse.test_with   sw    //))$''2gx'E'EF	 	(	'*a(r   c                    ^ SmU4S jn[         R                  R                  U R                  U5      nUR	                  5         U R                  U R                  R                  5        U R                  T5        g )NFc                  
   > Sm g )NTr   )closehook_calleds   r   	closehook1TestResponse.test_addclosehook.<locals>.closehook%   s	    #r   )r!   r"   addclosehookr   r	   r(   r'   )r   r0   r/   s     @r   test_addclosehookTestResponse.test_addclosehook"   sU     	$ OO00)D	'()r   c                 ,   [         R                  R                  U R                  U R                  5      nU R                  UR                  5       U R                  5        U R                  UR                  U R                  5        UR                  5         g r   )	r!   r"   addinfor   r   assertEqualinfoheadersr	   )r   r8   s     r   test_addinfoTestResponse.test_addinfo/   sa    &&tww0A0ABd&7&78t'8'89

r   c                 &   SnSn[         R                  R                  U R                  U R                  X5      nU R                  UR                  5       U R                  5        U R                  UR                  5       U5        U R                  UR                  5       U5        U R                  UR                  U R                  5        U R                  UR                  U5        U R                  UR                  U5        UR                  5         g )Nzhttp://www.python.org   )r!   r"   
addinfourlr   r   r7   r8   geturlgetcoder9   urlstatusr	   )r   rA   codeinfourls       r   test_addinfourlTestResponse.test_addinfourl5   s    %//,,TWWd6G6G-08):):;)3/*D1$*;*;<c*.r   c                 8    U R                   R                  5         g r   )r   r	   r   s    r   tearDownTestResponse.tearDownB   s    		r   )r   r   r   N)__name__
__module____qualname____firstlineno__r   r+   r3   r:   rE   rH   __static_attributes__r   r   r   r   r      s     4)*r   r   __main__)__doc__r   r$   urllib.responser!   unittesttestr   is_wasiSkipTestTestCaser   rJ   mainr   r   r   <module>rX      s[    -     
??


:
;;68$$ 6p zMMO r   