;
Íâ"Ic               @   s›   d  Z  d d l Z d d l m Z e j d ƒ Z d d l Z d d l Z Gd „  d e j ƒ Z	 Gd „  d e j ƒ Z
 d	 „  Z e d
 k o e ƒ  n d S(   u&   Unit tests for socket timeout feature.i    N(   u   supportu   networkc             B   se   |  Ee  Z d  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 S(   u9   Test case for socket.gettimeout() and socket.settimeout()c             C   s   t  j  t  j t  j ƒ |  _ d  S(   N(   u   socketu   AF_INETu   SOCK_STREAMu   sock(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   setUp   s    c             C   s   |  j  j ƒ  d  S(   N(   u   socku   close(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   tearDown   s    c             C   s    |  j  |  j j ƒ  d  d ƒ d  S(   Nu   timeout not disabled by default(   u   assertEqualu   socku
   gettimeoutu   None(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testObjectCreation   s    c             C   s   |  j  j d ƒ |  j |  j  j ƒ  d ƒ |  j  j d ƒ |  j |  j  j ƒ  d ƒ |  j  j d  ƒ |  j |  j  j ƒ  d  ƒ d  S(   Ngáz®Ga@i   (   u   socku
   settimeoutu   assertEqualu
   gettimeoutu   None(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testFloatReturnValue   s    c             C   sn   |  j  j d ƒ |  j t |  j  j ƒ  ƒ t d ƒ ƒ |  j  j d ƒ |  j t |  j  j ƒ  ƒ t d ƒ ƒ d  S(   Ni   g      ð?g333333@(   u   socku
   settimeoutu   assertEqualu   typeu
   gettimeout(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testReturnType&   s    %c             C   sÚ   |  j  j d ƒ |  j  j d ƒ |  j  j d ƒ |  j  j d  ƒ |  j t |  j  j d ƒ |  j t |  j  j d ƒ |  j t |  j  j d ƒ |  j t |  j  j g  ƒ |  j t |  j  j i  ƒ |  j t |  j  j d ƒ d  S(   Ni    g        u    y                (    (   u   socku
   settimeoutu   Noneu   assertRaisesu	   TypeError(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testTypeCheck.   s    c             C   sO   |  j  t |  j j d ƒ |  j  t |  j j d ƒ |  j  t |  j j d ƒ d  S(   Niÿÿÿÿg      ð¿(   u   assertRaisesu
   ValueErroru   socku
   settimeout(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testRangeCheck;   s    c             C   sÈ   |  j  j d ƒ |  j  j d ƒ |  j |  j  j ƒ  d  ƒ |  j  j d ƒ |  j |  j  j ƒ  d ƒ |  j  j d ƒ |  j  j d ƒ |  j |  j  j ƒ  d ƒ |  j  j d ƒ |  j |  j  j ƒ  d  ƒ d  S(   Ni
   i   i    g        (   u   socku
   settimeoutu   setblockingu   assertEqualu
   gettimeoutu   None(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testTimeoutThenBlockingA   s    c             C   sv   |  j  j d ƒ |  j  j d ƒ |  j |  j  j ƒ  d ƒ |  j  j d ƒ |  j  j d ƒ |  j |  j  j ƒ  d ƒ d  S(   Ni    i   (   u   socku   setblockingu
   settimeoutu   assertEqualu
   gettimeout(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testBlockingThenTimeoutO   s    N(   u   __name__u
   __module__u   __doc__u   setUpu   tearDownu   testObjectCreationu   testFloatReturnValueu   testReturnTypeu   testTypeChecku   testRangeChecku   testTimeoutThenBlockingu   testBlockingThenTimeout(   u
   __locals__(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   CreationTestCase   s   
								u   CreationTestCasec             B   sk   |  Ee  Z d  Z d Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d S(   u/   Test case for socket.socket() timeout functionsg       @c             C   s1   t  j  t  j t  j ƒ |  _ d |  _ d |  _ d  S(   Nu   www.python.org.iP   u	   127.0.0.1iûb  (   u   www.python.org.iP   (   u	   127.0.0.1iûb  (   u   socketu   AF_INETu   SOCK_STREAMu   socku   addr_remoteu
   addr_local(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   setUpe   s    	c             C   s   |  j  j ƒ  d  S(   N(   u   socku   close(   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   tearDownj   s    c             C   s‘   d } d } |  j  j | ƒ t j ƒ  } |  j t j |  j  j | ƒ t j ƒ  } t | | ƒ } |  j | | |  j	 k  d | |  j	 | f ƒ d  S(   Nu   10.0.0.0i90  gü©ñÒMbP?u<   timeout (%g) is more than %g seconds more than expected (%g)(   u   10.0.0.0i90  (
   u   socku
   settimeoutu   timeu   failUnlessRaisesu   socketu   erroru   connectu   absu   assert_u   fuzz(   u   selfu   addru   _timeoutu   _t1u   _t2u   _delta(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testConnectTimeoutm   s    c             C   sž   d } |  j  j |  j ƒ |  j  j | ƒ t j ƒ  } |  j t j |  j  j d ƒ t j ƒ  } t	 | | ƒ } |  j
 | | |  j k  d | |  j | f ƒ d  S(   Ng{®Gáz”?i   u2   timeout (%g) is %g seconds more than expected (%g)(   u   socku   connectu   addr_remoteu
   settimeoutu   timeu   failUnlessRaisesu   socketu   erroru   recvu   absu   assert_u   fuzz(   u   selfu   _timeoutu   _t1u   _t2u   _delta(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testRecvTimeout‚   s    c             C   s«   d } |  j  j | ƒ |  j  j |  j ƒ |  j  j d ƒ t j ƒ  } |  j t j |  j  j	 ƒ t j ƒ  } t
 | | ƒ } |  j | | |  j k  d | |  j | f ƒ d  S(   Ni   i   u2   timeout (%g) is %g seconds more than expected (%g)(   u   socku
   settimeoutu   bindu
   addr_localu   listenu   timeu   failUnlessRaisesu   socketu   erroru   acceptu   absu   assert_u   fuzz(   u   selfu   _timeoutu   _t1u   _t2u   _delta(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testAcceptTimeout‘   s    c             C   s¹   d } t  j  t  j t  j ƒ |  _ |  j j | ƒ |  j j |  j ƒ t j ƒ  } |  j t  j	 |  j j
 d ƒ t j ƒ  } t | | ƒ } |  j | | |  j k  d | |  j | f ƒ d  S(   Ni   i    u2   timeout (%g) is %g seconds more than expected (%g)(   u   socketu   AF_INETu
   SOCK_DGRAMu   socku
   settimeoutu   bindu
   addr_localu   timeu   failUnlessRaisesu   erroru   recvfromu   absu   assert_u   fuzz(   u   selfu   _timeoutu   _t1u   _t2u   _delta(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testRecvfromTimeout¡   s    c             C   s   d  S(   N(    (   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testSend±   s    c             C   s   d  S(   N(    (   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu
   testSendto¶   s    c             C   s   d  S(   N(    (   u   self(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   testSendall»   s    N(   u   __name__u
   __module__u   __doc__u   fuzzu   setUpu   tearDownu   testConnectTimeoutu   testRecvTimeoutu   testAcceptTimeoutu   testRecvfromTimeoutu   testSendu
   testSendtou   testSendall(   u
   __locals__(    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   TimeoutTestCaseZ   s   
								u   TimeoutTestCasec               C   s!   t  j d ƒ t  j t t ƒ d  S(   Nu   network(   u   supportu   requiresu   run_unittestu   CreationTestCaseu   TimeoutTestCase(    (    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu	   test_mainÁ   s    u   __main__(   u   __doc__u   unittestu   testu   supportu   is_resource_enabledu   skip_expectedu   timeu   socketu   TestCaseu   CreationTestCaseu   TimeoutTestCaseu	   test_mainu   __name__(    (    (    u.   /mit/python/lib/python3.0/test/test_timeout.pyu   <module>   s   Mg	