Ñò
‘à"Ic           @   s¡   d  Z  d d k Z d d k l Z e i d ƒ Z d d k Z d d k Z d e i f d „  ƒ  YZ	 d e i f d „  ƒ  YZ
 d	 „  Z e d
 j o e ƒ  n d S(   s&   Unit tests for socket timeout feature.iÿÿÿÿN(   t   test_supportt   networkt   CreationTestCasec           B   s_   e  Z d  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z RS(
   s9   Test case for socket.gettimeout() and socket.settimeout()c         C   s   t  i  t  i t  i ƒ |  _ d  S(   N(   t   sockett   AF_INETt   SOCK_STREAMt   sock(   t   self(    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   setUp   s    c         C   s   |  i  i ƒ  d  S(   N(   R   t   close(   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   tearDown   s    c         C   s    |  i  |  i i ƒ  d  d ƒ d  S(   Ns   timeout not disabled by default(   t   assertEqualR   t
   gettimeoutt   None(   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testObjectCreation   s    c         C   s   |  i  i d ƒ |  i |  i  i ƒ  d ƒ |  i  i d ƒ |  i |  i  i ƒ  d ƒ |  i  i d  ƒ |  i |  i  i ƒ  d  ƒ d  S(   Ngáz®Ga@i   (   R   t
   settimeoutR   R   R   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testFloatReturnValue   s    c         C   sn   |  i  i d ƒ |  i t |  i  i ƒ  ƒ t d ƒ ƒ |  i  i d ƒ |  i t |  i  i ƒ  ƒ t d ƒ ƒ d  S(   Ni   g      ð?g333333@(   R   R   R   t   typeR   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testReturnType&   s    %c         C   sÚ   |  i  i d ƒ |  i  i d ƒ |  i  i d ƒ |  i  i d  ƒ |  i t |  i  i d ƒ |  i t |  i  i d ƒ |  i t |  i  i d ƒ |  i t |  i  i g  ƒ |  i t |  i  i h  ƒ |  i t |  i  i d ƒ d  S(   Ni    l    g        t    u    y                (    (   R   R   R   t   assertRaisest	   TypeError(   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testTypeCheck.   s    c         C   sO   |  i  t |  i i d ƒ |  i  t |  i i d ƒ |  i  t |  i i d ƒ d  S(   Niÿÿÿÿlÿÿÿÿ g      ð¿(   R   t
   ValueErrorR   R   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testRangeCheck;   s    c         C   sÈ   |  i  i d ƒ |  i  i d ƒ |  i |  i  i ƒ  d  ƒ |  i  i d ƒ |  i |  i  i ƒ  d ƒ |  i  i d ƒ |  i  i d ƒ |  i |  i  i ƒ  d ƒ |  i  i d ƒ |  i |  i  i ƒ  d  ƒ d  S(   Ni
   i   i    g        (   R   R   t   setblockingR   R   R   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testTimeoutThenBlockingA   s    c         C   sv   |  i  i d ƒ |  i  i d ƒ |  i |  i  i ƒ  d ƒ |  i  i d ƒ |  i  i d ƒ |  i |  i  i ƒ  d ƒ d  S(   Ni    i   (   R   R   R   R   R   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testBlockingThenTimeoutO   s    (   t   __name__t
   __module__t   __doc__R   R
   R   R   R   R   R   R   R   (    (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyR      s   								t   TimeoutTestCasec           B   se   e  Z d  Z d Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z RS(   s/   Test case for socket.socket() timeout functionsg       @c         C   s1   t  i  t  i t  i ƒ |  _ d |  _ d |  _ d  S(   Ns   www.python.org.iP   s	   127.0.0.1iûb  (   s   www.python.org.iP   (   s	   127.0.0.1iûb  (   R   R   R   R   t   addr_remotet
   addr_local(   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyR   e   s    	c         C   s   |  i  i ƒ  d  S(   N(   R   R	   (   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyR
   j   s    c         C   s‘   d } d } |  i  i | ƒ t i ƒ  } |  i t i |  i  i | ƒ t i ƒ  } t | | ƒ } |  i | | |  i	 j  d | |  i	 | f ƒ d  S(   Ns   10.0.0.0i90  gü©ñÒMbP?s<   timeout (%g) is more than %g seconds more than expected (%g)(   s   10.0.0.0i90  (
   R   R   t   timet   failUnlessRaisesR   t   errort   connectt   abst   assert_t   fuzz(   R   t   addrt   _timeoutt   _t1t   _t2t   _delta(    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testConnectTimeoutm   s    c         C   sž   d } |  i  i |  i ƒ |  i  i | ƒ t i ƒ  } |  i t i |  i  i d ƒ t i ƒ  } t	 | | ƒ } |  i
 | | |  i j  d | |  i | f ƒ d  S(   Ng{®Gáz”?i   s2   timeout (%g) is %g seconds more than expected (%g)(   R   R%   R    R   R"   R#   R   R$   t   recvR&   R'   R(   (   R   R*   R+   R,   R-   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testRecvTimeout‚   s    c         C   s«   d } |  i  i | ƒ |  i  i |  i ƒ |  i  i d ƒ t i ƒ  } |  i t i |  i  i	 ƒ t i ƒ  } t
 | | ƒ } |  i | | |  i j  d | |  i | f ƒ d  S(   Ni   i   s2   timeout (%g) is %g seconds more than expected (%g)(   R   R   t   bindR!   t   listenR"   R#   R   R$   t   acceptR&   R'   R(   (   R   R*   R+   R,   R-   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testAcceptTimeout‘   s    c         C   s¹   d } t  i  t  i t  i ƒ |  _ |  i i | ƒ |  i i |  i ƒ t i ƒ  } |  i t  i	 |  i i
 d ƒ t i ƒ  } t | | ƒ } |  i | | |  i j  d | |  i | f ƒ d  S(   Ni   i    s2   timeout (%g) is %g seconds more than expected (%g)(   R   R   t
   SOCK_DGRAMR   R   R1   R!   R"   R#   R$   t   recvfromR&   R'   R(   (   R   R*   R+   R,   R-   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testRecvfromTimeout¡   s    c         C   s   d  S(   N(    (   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testSend±   s    c         C   s   d  S(   N(    (   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt
   testSendto¶   s    c         C   s   d  S(   N(    (   R   (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   testSendall»   s    (   R   R   R   R(   R   R
   R.   R0   R4   R7   R8   R9   R:   (    (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyR   Z   s   								c           C   s!   t  i d ƒ t  i t t ƒ d  S(   NR   (   R    t   requirest   run_unittestR   R   (    (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt	   test_mainÁ   s    t   __main__(   R   t   unittestt   testR    t   is_resource_enabledt   skip_expectedR"   R   t   TestCaseR   R   R=   R   (    (    (    s.   /mit/python/lib/python2.6/test/test_timeout.pyt   <module>   s   Mg	