;
Ìâ"Ic               @   s  d  Z  d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l m	 Z	 d d l
 m Z e j Z d Z d Z d Z Gd „  d e j ƒ Z Gd	 „  d
 e j e j ƒ Z Gd „  d e	 ƒ Z d Z e e d ƒ og d d l Z d Z e j j e j j e ƒ p e j  d ƒ Z! Gd „  d e ƒ Z" Gd „  d e ƒ Z# n Gd „  d e	 ƒ Z$ d „  Z% e& d k o e% ƒ  n d S(   u   Test script for poplib module.i    N(   u   TestCase(   u   supports   1 1
2 2
3 3
4 4
5 5
.
st   From: postmaster@python.org
Content-Type: text/plain
MIME-Version: 1.0
Subject: Dummy

line1
line2
line3
.
c             B   s˜   |  Ee  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z e Z d
 „  Z e Z d „  Z d „  Z d „  Z d S(   c             C   s:   t  j j |  | ƒ |  j d ƒ g  |  _ |  j d ƒ d  S(   Ns   
u   +OK dummy pop3 server ready.(   u   asynchatu
   async_chatu   __init__u   set_terminatoru	   in_bufferu   push(   u   selfu   conn(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   __init__#   s    	c             C   s   |  j  j | ƒ d  S(   N(   u	   in_bufferu   append(   u   selfu   data(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   collect_incoming_data)   s    c             C   sÇ   d j  |  j ƒ } t | d ƒ } g  |  _ | j d ƒ d j ƒ  } | j d ƒ } | d k o | | d d  … } n d } t |  d | ƒ o! t |  d | ƒ } | | ƒ n |  j d	 | ƒ d  S(
   Ns    u
   ISO-8859-1u    i    iÿÿÿÿi   u    u   cmd_u$   -ERR unrecognized POP3 command "%s".(	   u   joinu	   in_bufferu   stru   splitu   loweru   findu   hasattru   getattru   push(   u   selfu   lineu   cmdu   spaceu   argu   method(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   found_terminator,   s    	c             C   s   ‚  d  S(   N(    (   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   handle_error<   s    c             C   s$   t  j j |  | j d ƒ d ƒ d  S(   Nu
   ISO-8859-1s   
(   u   asynchatu
   async_chatu   pushu   encode(   u   selfu   data(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   push?   s    c             C   s   |  j  | ƒ d  S(   N(   u   push(   u   selfu   arg(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   cmd_echoB   s    c             C   s/   | d k o |  j  d ƒ n |  j  d ƒ d  S(   Nu   guidou   -ERR no such useru   +OK password required(   u   push(   u   selfu   arg(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   cmd_userF   s    c             C   s/   | d k o |  j  d ƒ n |  j  d ƒ d  S(   Nu   pythonu   -ERR wrong passwordu   +OK 10 messages(   u   push(   u   selfu   arg(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   cmd_passK   s    c             C   s   |  j  d ƒ d  S(   Nu
   +OK 10 100(   u   push(   u   selfu   arg(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   cmd_statP   s    c             C   sF   | o |  j  d | | f ƒ n! |  j  d ƒ t j j  |  t ƒ d  S(   Nu	   +OK %s %su   +OK(   u   pushu   asynchatu
   async_chatu	   LIST_RESP(   u   selfu   arg(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   cmd_listS   s    c             C   s.   |  j  d t t ƒ ƒ t j j  |  t ƒ d  S(   Nu   +OK %s bytes(   u   pushu   lenu	   RETR_RESPu   asynchatu
   async_chat(   u   selfu   arg(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   cmd_retr\   s    c             C   s   |  j  d ƒ d  S(   Nu    +OK message marked for deletion.(   u   push(   u   selfu   arg(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   cmd_deleb   s    c             C   s   |  j  d ƒ d  S(   Nu   +OK done nothing.(   u   push(   u   selfu   arg(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   cmd_noope   s    c             C   s   |  j  d ƒ d  S(   Nu   +OK done nothing.(   u   push(   u   selfu   arg(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   cmd_rpoph   s    N(   u   __name__u
   __module__u   __init__u   collect_incoming_datau   found_terminatoru   handle_erroru   pushu   cmd_echou   cmd_useru   cmd_passu   cmd_statu   cmd_listu   cmd_uidlu   cmd_retru   cmd_topu   cmd_deleu   cmd_noopu   cmd_rpop(   u
   __locals__(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   DummyPOP3Handler!   s    
													u   DummyPOP3Handlerc             B   sh   |  Ee  Z e Z e j d  „ Z d „  Z d „  Z d „  Z	 d „  Z
 d „  Z e Z d „  Z d „  Z d S(	   c             C   sŽ   t  j j |  ƒ t j j |  ƒ |  j | t j ƒ |  j | ƒ |  j	 d ƒ d |  _ t  j ƒ  |  _ |  j j ƒ  d  d … \ |  _ |  _ d  S(   Ni   i   F(   u	   threadingu   Threadu   __init__u   asyncoreu
   dispatcheru   create_socketu   socketu   SOCK_STREAMu   bindu   listenu   Falseu   activeu   Locku   active_locku   getsocknameu   hostu   port(   u   selfu   addressu   af(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   __init__p   s    	c             C   sB   |  j  p t ‚ t j ƒ  |  _ t j j |  ƒ |  j j ƒ  d  S(   N(   u   activeu   AssertionErroru	   threadingu   Eventu   _DummyPOP3Server__flagu   Threadu   startu   wait(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   startz   s    c             C   sv   d |  _ |  j j ƒ  xI |  j o> t j o4 |  j j ƒ  t j d d d d ƒ |  j j	 ƒ  q Wt j
 d d ƒ d  S(   Nu   timeoutgš™™™™™¹?u   counti   u
   ignore_allT(   u   Trueu   activeu   _DummyPOP3Server__flagu   setu   asyncoreu
   socket_mapu   active_locku   acquireu   loopu   releaseu	   close_all(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   run€   s    	 c             C   s(   |  j  p t ‚ d |  _  |  j ƒ  d  S(   NF(   u   activeu   AssertionErroru   Falseu   join(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   stop‰   s    	c             C   s2   |  j  ƒ  \ } } |  j | ƒ |  _ |  j ƒ  d  S(   N(   u   acceptu   handleru   close(   u   selfu   connu   addr(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   handle_acceptŽ   s    c             C   s   |  j  ƒ  d  S(   N(   u   close(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   handle_connect“   s    c             C   s   d S(   Ni    (    (   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   writable—   s    c             C   s   ‚  d  S(   N(    (   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   handle_errorš   s    N(   u   __name__u
   __module__u   DummyPOP3Handleru   handleru   socketu   AF_INETu   __init__u   startu   runu   stopu   handle_acceptu   handle_connectu   handle_readu   writableu   handle_error(   u
   __locals__(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   DummyPOP3Serverl   s   

							u   DummyPOP3Serverc             B   s•   |  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 „  Z d „  Z d „  Z d „  Z d S(   c             C   s   |  j  | j d ƒ ƒ d  S(   Ns   +OK(   u
   assertTrueu
   startswith(   u   selfu   resp(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   assertOKŸ   s    c             C   sG   t  t t f ƒ |  _ |  j j ƒ  t j |  j j |  j j ƒ |  _	 d  S(   N(
   u   DummyPOP3Serveru   HOSTu   PORTu   serveru   startu   poplibu   POP3u   hostu   portu   client(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   setUp¢   s    c             C   s   |  j  j ƒ  |  j j ƒ  d  S(   N(   u   clientu   quitu   serveru   stop(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   tearDown§   s    c             C   s   |  j  |  j j ƒ  d ƒ d  S(   Ns   +OK dummy pop3 server ready.(   u   assertEqualu   clientu
   getwelcome(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   test_getwelcome«   s    c             C   s    |  j  t j |  j j d ƒ d  S(   Nu	   echo -err(   u   assertRaisesu   poplibu   error_protou   clientu	   _shortcmd(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   test_exceptions®   s    c             C   s9   |  j  |  j j d ƒ ƒ |  j t j |  j j d ƒ d  S(   Nu   guidou   invalid(   u   assertOKu   clientu   useru   assertRaisesu   poplibu   error_proto(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu	   test_user±   s    c             C   s9   |  j  |  j j d ƒ ƒ |  j t j |  j j d ƒ d  S(   Nu   pythonu   invalid(   u   assertOKu   clientu   pass_u   assertRaisesu   poplibu   error_protou   user(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu
   test_pass_µ   s    c             C   s   |  j  |  j j ƒ  d ƒ d  S(   Ni
   id   (   i
   id   (   u   assertEqualu   clientu   stat(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu	   test_stat¹   s    c             C   s^   |  j  |  j j ƒ  d d  … d d d d d g d f ƒ |  j |  j j d ƒ j d	 ƒ ƒ d  S(
   Ni   s   1 1s   2 2s   3 3s   4 4s   5 5i   u   1s   OK 1 1(   u   assertEqualu   clientu   listu
   assertTrueu   endswith(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu	   test_list¼   s    
c          	   C   sM   d d d d d d d d d	 g d
 f } |  j  j d ƒ } |  j | | ƒ d  S(   Ns   +OK 116 bytess   From: postmaster@python.orgs   Content-Type: text/plains   MIME-Version: 1.0s   Subject: Dummys    s   line1s   line2s   line3iq   u   foo(   u   clientu   retru   assertEqual(   u   selfu   expectedu   foo(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu	   test_retrÂ   s    	c             C   s   |  j  |  j j d ƒ ƒ d  S(   Nu   foo(   u   assertOKu   clientu   dele(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu	   test_deleË   s    c             C   s   |  j  |  j j ƒ  ƒ d  S(   N(   u   assertOKu   clientu   noop(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu	   test_noopÎ   s    c             C   s   |  j  |  j j d ƒ ƒ d  S(   Nu   foo(   u   assertOKu   clientu   rpop(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu	   test_rpopÑ   s    c          	   C   sJ   d d d d d d d d d	 g d
 f } |  j  |  j j d d ƒ | ƒ d  S(   Ns   +OK 116 bytess   From: postmaster@python.orgs   Content-Type: text/plains   MIME-Version: 1.0s   Subject: Dummys    s   line1s   line2s   line3iq   i   (   u   assertEqualu   clientu   top(   u   selfu   expected(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   test_topÔ   s    		c             C   s!   |  j  j ƒ  |  j  j d ƒ d  S(   Nu   foo(   u   clientu   uidl(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu	   test_uidlÜ   s    N(   u   __name__u
   __module__u   assertOKu   setUpu   tearDownu   test_getwelcomeu   test_exceptionsu	   test_useru
   test_pass_u	   test_statu	   test_listu	   test_retru	   test_deleu	   test_noopu	   test_rpopu   test_topu	   test_uidl(   u
   __locals__(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   TestPOP3Classž   s   
															u   TestPOP3Classu   POP3_SSLu   keycert.pemc             B   s   |  Ee  Z d  „  Z d S(   c             C   so   t  j j |  | ƒ t j |  j d t d d ƒ} |  j ƒ  |  j	 | ƒ |  j
 d ƒ g  |  _ |  j d ƒ d  S(   Nu   certfileu   server_sides   
u   +OK dummy pop3 server ready.T(   u   asynchatu
   async_chatu   __init__u   sslu   wrap_socketu   socketu   CERTFILEu   Trueu   del_channelu
   set_socketu   set_terminatoru	   in_bufferu   push(   u   selfu   connu
   ssl_socket(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   __init__ê   s    	
	N(   u   __name__u
   __module__u   __init__(   u
   __locals__(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   DummyPOP3_SSLHandlerè   s   
u   DummyPOP3_SSLHandlerc             B   s    |  Ee  Z d  „  Z d „  Z d S(   c             C   sS   t  t t f ƒ |  _ t |  j _ |  j j ƒ  t j |  j j	 |  j j
 ƒ |  _ d  S(   N(   u   DummyPOP3Serveru   HOSTu   PORTu   serveru   DummyPOP3_SSLHandleru   handleru   startu   poplibu   POP3_SSLu   hostu   portu   client(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   setUp÷   s    c             C   s   |  j  d t j k ƒ d  S(   Nu   POP3_SSL(   u   assert_u   poplibu   __all__(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   test__all__ý   s    N(   u   __name__u
   __module__u   setUpu   test__all__(   u
   __locals__(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   TestPOP3_SSLClassô   s   
	u   TestPOP3_SSLClassc             B   sD   |  Ee  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d S(   c             C   s‹   t  j ƒ  |  _ t j t j t j ƒ |  _ |  j j d ƒ t j	 |  j ƒ |  _
 t  j d |  j d |  j |  j f ƒ j ƒ  t j d ƒ d  S(   Ni   u   targetu   argsgš™™™™™¹?(   u	   threadingu   Eventu   evtu   socketu   AF_INETu   SOCK_STREAMu   socku
   settimeoutu   test_supportu	   bind_portu   portu   Threadu   serveru   startu   timeu   sleep(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   setUp  s    +c             C   s   |  j  j ƒ  d  S(   N(   u   evtu   wait(   u   self(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   tearDown  s    c             C   st   | j  d ƒ zK y | j ƒ  \ } } Wn t j k
 o Yn X| j d ƒ | j ƒ  Wd  | j ƒ  | j ƒ  Xd  S(   Ni   s   + Hola mundo
(   u   listenu   acceptu   socketu   timeoutu   sendu   closeu   set(   u   selfu   evtu   servu   connu   addr(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   server  s     
c          	   C   sz   |  j  t j ƒ  d  k ƒ t j d ƒ z t j d |  j ƒ } Wd  t j d  ƒ X|  j | j	 j
 ƒ  d ƒ | j	 j ƒ  d  S(   Ni   u	   localhost(   u
   assertTrueu   socketu   getdefaulttimeoutu   Noneu   setdefaulttimeoutu   poplibu   POP3u   portu   assertEqualu   socku
   gettimeoutu   close(   u   selfu   pop(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   testTimeoutDefault  s    c             C   sƒ   |  j  t j ƒ  d  k ƒ t j d ƒ z t j t |  j d d  ƒ} Wd  t j d  ƒ X|  j  | j	 j
 ƒ  d  k ƒ | j	 j ƒ  d  S(   Ni   u   timeout(   u
   assertTrueu   socketu   getdefaulttimeoutu   Noneu   setdefaulttimeoutu   poplibu   POP3u   HOSTu   portu   socku
   gettimeoutu   close(   u   selfu   pop(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   testTimeoutNone%  s    c             C   sE   t  j d |  j d d ƒ} |  j | j j ƒ  d ƒ | j j ƒ  d  S(   Nu	   localhostu   timeouti   (   u   poplibu   POP3u   portu   assertEqualu   socku
   gettimeoutu   close(   u   selfu   pop(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   testTimeoutValue/  s    N(   u   __name__u
   __module__u   setUpu   tearDownu   serveru   testTimeoutDefaultu   testTimeoutNoneu   testTimeoutValue(   u
   __locals__(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   TestTimeouts  s   
				
	
u   TestTimeoutsc           	   C   sV   t  t g }  t o |  j t ƒ n t j ƒ  } z t j |  Œ  Wd  t j | Œ  Xd  S(   N(	   u   TestPOP3Classu   TestTimeoutsu   SUPPORTS_SSLu   appendu   TestPOP3_SSLClassu   test_supportu   threading_setupu   run_unittestu   threading_cleanup(   u   testsu   thread_info(    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu	   test_main5  s    u   __main__FT('   u   __doc__u   poplibu	   threadingu   asyncoreu   asynchatu   socketu   osu   timeu   unittestu   TestCaseu   testu   supportu   test_supportu   HOSTu   PORTu	   LIST_RESPu	   RETR_RESPu
   async_chatu   DummyPOP3Handleru
   dispatcheru   Threadu   DummyPOP3Serveru   TestPOP3Classu   Falseu   SUPPORTS_SSLu   hasattru   sslu   Trueu   pathu   joinu   dirnameu   __file__u   curdiru   CERTFILEu   DummyPOP3_SSLHandleru   TestPOP3_SSLClassu   TestTimeoutsu	   test_mainu   __name__(    (    (    u-   /mit/python/lib/python3.0/test/test_poplib.pyu   <module>   s6   		K2C+4	