;
Νβ"Ic               @   s  d  d l  Z  d  d l m Z d  d l m Z d  d l Z d  d l Z d  d l Z d  d l Z	 d  d l
 Z	 d   Z d   Z e e	 j j e	 j j  Z Gd   d e  j  Z Gd   d	 e  j  Z Gd
   d e  j  Z Gd   d e  j  Z d   Z e d k o e   n d S(   i    N(   u   support(   u   sanepathname2urlc             O   so   xb t  d  D]T } y |  | |   SWq | k
 o$ } z | } w WYd  d  } ~ Xq   Yq Xq W|  d  S(   Ni   (   u   range(   u   funcu   excu   argsu   kwargsu   iu   eu   last_exc(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   _retry_thrice   s     c                s      f d   } | S(   Nc                 s   t     |  |  S(   N(   u   _retry_thrice(   u   argsu   kwargs(   u   excu   func(    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   wrapped   s    (    (   u   funcu   excu   wrapped(    (   u   excu   funcu1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   _wrap_with_retry_thrice   s    c             B   s   |  Ee  Z d  Z d S(   u&   Tests urllib2 authentication features.N(   u   __name__u
   __module__u   __doc__(   u
   __locals__(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu	   AuthTests$   s   
u	   AuthTestsc             B   s   |  Ee  Z d    Z d S(   c             C   sh   d d  l  } d d  l } d d  l } t d  } | j } |  j | j  | j   |  j | j  d  S(   Ni    u   http://www.python.org/(   u   socketu   http.clientu   gcu   _urlopen_with_retryu   fpu   assert_u   closedu   close(   u   selfu   socketu   httpu   gcu   responseu   sock(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu
   test_closeM   s    $	
N(   u   __name__u
   __module__u
   test_close(   u
   __locals__(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   CloseSocketTestK   s   
u   CloseSocketTestc             B   s>   |  Ee  Z d    Z d   Z d   Z d d  Z d   Z d S(   c             C   s   d  S(   N(    (   u   self(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   setUpZ   s    c             C   s)   d d d g } |  j  | |  j    d  S(   Nu,   ftp://ftp.kernel.org/pub/linux/kernel/READMEu7   ftp://ftp.kernel.org/pub/linux/kernel/non-existant-fileu[   ftp://gatekeeper.research.compaq.com/pub/DEC/SRC/research-reports/00README-Legal-Rules-Regs(   u
   _test_urlsu   _extra_handlers(   u   selfu   urls(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   test_ftpc   s    	c             C   s   t  j } t | d  } zh | j d  | j   d t t j j |   d d  t
 j j f g } |  j | |  j   d d Wd  t j |  Xd  S(   Nu   wu	   hi there
u   file:u   file:///nonsensename/etc/passwdu   retryT(   u   supportu   TESTFNu   openu   writeu   closeu   sanepathname2urlu   osu   pathu   abspathu   Noneu   urllibu   erroru   URLErroru
   _test_urlsu   _extra_handlersu   Trueu   remove(   u   selfu   TESTFNu   fu   urls(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu	   test_filem   s    	
 c             C   s¨  d d  l  } d d  l } d d  l } | j d  j } t j j |   j } | o t	 | t j
 j  } n x6| D].}	 t |	 t  o |	 \ }	 }
 } n d  }
 } | |	  y | |	 |
  } Wnt t k
 oh } zR | |  | o< d | |	 |
 t |  | f } |  j t | |  |  n WYd  d  } ~ XnR Xt j   j } j   z | j   } Wd  | ~ QX| j   | d t |   | d  | j d  qr Wd  S(   Ni    u   test_urllib2u5   Didn't get expected error(s) %s for %s %s, got %s: %su   read %d bytesu   ******** next url coming up...gΉ?(   u   socketu   timeu   loggingu	   getLoggeru   debugu   urllibu   requestu   build_openeru   openu   _wrap_with_retry_thriceu   erroru   URLErroru
   isinstanceu   tupleu   Noneu   EnvironmentErroru   typeu   assert_u   supportu   transient_internetu   __exit__u	   __enter__u   readu   closeu   lenu   sleep(   u   selfu   urlsu   handlersu   retryu   socketu   timeu   loggingu   debugu   urlopenu   urlu   requ   expected_erru   fu   erru   msgu   _[1]u   buf(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu
   _test_urls   s6     


1

c             C   s3   g  } t  j j   } | j d  | j |  | S(   Ni   (   u   urllibu   requestu   CacheFTPHandleru
   setTimeoutu   append(   u   selfu   handlersu   cfh(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   _extra_handlersΈ   s
    NT(   u   __name__u
   __module__u   setUpu   test_ftpu	   test_fileu   Trueu
   _test_urlsu   _extra_handlers(   u
   __locals__(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   OtherNetworkTestsY   s
   
			
	+ u   OtherNetworkTestsc             B   s\   |  Ee  Z d    Z d   Z d   Z d   Z d Z d   Z d   Z d   Z	 d   Z
 d	 S(
   c             C   sH   |  j  t j   d  k  t d  } |  j  | j j j   d  k  d  S(   Nu   http://www.python.org(   u
   assertTrueu   socketu   getdefaulttimeoutu   Noneu   _urlopen_with_retryu   fpu   _socku
   gettimeout(   u   selfu   u(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   test_http_basicΓ   s    c          	   C   sg   |  j  t j   d  k  t j d  z t d  } Wd  t j d   X|  j | j j j	   d  d  S(   Ni<   u   http://www.python.org(
   u
   assertTrueu   socketu   getdefaulttimeoutu   Noneu   setdefaulttimeoutu   _urlopen_with_retryu   assertEqualu   fpu   _socku
   gettimeout(   u   selfu   u(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   test_http_default_timeoutΘ   s    c          
   C   sp   |  j  t j   d  k  t j d  z t d d d  } Wd  t j d   X|  j  | j j j   d  k  d  S(   Ni<   u   http://www.python.orgu   timeout(	   u
   assertTrueu   socketu   getdefaulttimeoutu   Noneu   setdefaulttimeoutu   _urlopen_with_retryu   fpu   _socku
   gettimeout(   u   selfu   u(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   test_http_no_timeoutΡ   s    c             C   s2   t  d d d } |  j | j j j   d  d  S(   Nu   http://www.python.orgu   timeoutix   (   u   _urlopen_with_retryu   assertEqualu   fpu   _socku
   gettimeout(   u   selfu   u(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   test_http_timeoutΪ   s    u#   ftp://ftp.mirror.nl/pub/mirror/gnu/c             C   sQ   |  j  t j   d  k  t |  j  } |  j  | j j j j j	   d  k  d  S(   N(
   u
   assertTrueu   socketu   getdefaulttimeoutu   Noneu   _urlopen_with_retryu   FTP_HOSTu   fpu   rawu   _socku
   gettimeout(   u   selfu   u(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   test_ftp_basicΰ   s    c          	   C   sp   |  j  t j   d  k  t j d  z t |  j  } Wd  t j d   X|  j | j j j	 j
 j   d  d  S(   Ni<   (   u
   assertTrueu   socketu   getdefaulttimeoutu   Noneu   setdefaulttimeoutu   _urlopen_with_retryu   FTP_HOSTu   assertEqualu   fpu   rawu   _socku
   gettimeout(   u   selfu   u(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   test_ftp_default_timeoutε   s    c          
   C   sy   |  j  t j   d  k  t j d  z t |  j d d  } Wd  t j d   X|  j  | j j j j	 j
   d  k  d  S(   Ni<   u   timeout(   u
   assertTrueu   socketu   getdefaulttimeoutu   Noneu   setdefaulttimeoutu   _urlopen_with_retryu   FTP_HOSTu   fpu   rawu   _socku
   gettimeout(   u   selfu   u(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   test_ftp_no_timeoutξ   s    c             C   s;   t  |  j d d } |  j | j j j j j   d  d  S(   Nu   timeouti<   (   u   _urlopen_with_retryu   FTP_HOSTu   assertEqualu   fpu   rawu   _socku
   gettimeout(   u   selfu   u(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   test_ftp_timeoutχ   s    N(   u   __name__u
   __module__u   test_http_basicu   test_http_default_timeoutu   test_http_no_timeoutu   test_http_timeoutu   FTP_HOSTu   test_ftp_basicu   test_ftp_default_timeoutu   test_ftp_no_timeoutu   test_ftp_timeout(   u
   __locals__(    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   TimeoutTestΒ   s   
											u   TimeoutTestc               C   s'   t  j d  t  j t t t t  d  S(   Nu   network(   u   supportu   requiresu   run_unittestu	   AuthTestsu   OtherNetworkTestsu   CloseSocketTestu   TimeoutTest(    (    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu	   test_mainό   s
    	u   __main__(   u   unittestu   testu   supportu   test.test_urllib2u   sanepathname2urlu   osu   socketu   sysu   urllib.erroru   urllibu   urllib.requestu   _retry_thriceu   _wrap_with_retry_thriceu   requestu   urlopenu   erroru   URLErroru   _urlopen_with_retryu   TestCaseu	   AuthTestsu   CloseSocketTestu   OtherNetworkTestsu   TimeoutTestu	   test_mainu   __name__(    (    (    u1   /mit/python/lib/python3.0/test/test_urllib2net.pyu   <module>   s$   		'i:	