Ñò
c3Lc           @   sl   d  Z  d d k Z d d k Z d d k Z d d k Td e i f d „  ƒ  YZ e d j o e i ƒ  n d S(   s'   benoitc@e-engura.com (BenoÃ®t Chesneau)iÿÿÿÿN(   t   *t   ClientServerTestCasec           B   s5   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   s7   t  ƒ  |  _ |  i i d ƒ |  _ t |  i ƒ |  _ d  S(   Nt   couchdbkit_test(   t   Servert   servert	   create_dbt   dbt   Consumert   consumer(   t   self(    (    sH   /Users/benoitc/Work/couchdbkit_env/src/couchdbkit/tests/test_consumer.pyt   setUp   s    c         C   s   y |  i  d =Wn n Xd  S(   NR   (   R   (   R	   (    (    sH   /Users/benoitc/Work/couchdbkit_env/src/couchdbkit/tests/test_consumer.pyt   tearDown   s    c         C   sÖ   |  i  i ƒ  } |  i d | j ƒ |  i | d d j ƒ |  i | d g  j ƒ h  } |  i i | ƒ |  i  i ƒ  } |  i | d d j ƒ |  i t | d ƒ d j ƒ | d d } |  i | d | d j ƒ d  S(   Nt   last_seqi    t   resultsi   t   idt   _id(   R   t   fetcht   assert_R   t   save_doct   len(   R	   t   res1t   doct   res2t   line(    (    sH   /Users/benoitc/Work/couchdbkit_env/src/couchdbkit/tests/test_consumer.pyt
   test_fetch   s    c            sd   ‡  f d †  } ˆ  i  i | ƒ t i d ˆ  i  i ƒ } t | _ | i ƒ  h  } ˆ  i i	 | ƒ d  S(   Nc            s8   ˆ  i  |  d d j ƒ ˆ  i  t |  d ƒ d j ƒ d  S(   NR   i   R   (   R   R   (   R   (   R	   (    sH   /Users/benoitc/Work/couchdbkit_env/src/couchdbkit/tests/test_consumer.pyt	   test_line*   s    t   target(
   R   t   register_callbackt	   threadingt   Threadt	   wait_oncet   Truet   daemont   startR   R   (   R	   R   t   tR   (    (   R	   sH   /Users/benoitc/Work/couchdbkit_env/src/couchdbkit/tests/test_consumer.pyt   test_longpoll(   s    	
c            sM  g  ˆ  _  ‡  f d †  } ˆ  i i | ƒ t i d ˆ  i i ƒ } t | _ | i ƒ  x; t	 d ƒ D]- } h d t
 | ƒ d 6} ˆ  i i | ƒ q` Wˆ  i i ƒ  t i d ƒ ˆ  i t ˆ  i  ƒ d j ƒ ˆ  i ˆ  i  d d d	 j ƒ h d
 d 6} ˆ  i i | ƒ t i d ƒ ˆ  i t ˆ  i  ƒ d j ƒ ˆ  i ˆ  i  d d d
 j ƒ d  S(   Nc            s   ˆ  i  i |  ƒ d  S(   N(   t   linest   append(   R   (   R	   (    sH   /Users/benoitc/Work/couchdbkit_env/src/couchdbkit/tests/test_consumer.pyR   7   s    R   i   s   test%sR   g      à?i   R   t   test4t   test5i   (   R$   R   R   R   R   t   waitR   R    R!   t   ranget   strR   R   t   ensure_full_committ   timet   sleepR   R   (   R	   R   R"   t   iR   (    (   R	   sH   /Users/benoitc/Work/couchdbkit_env/src/couchdbkit/tests/test_consumer.pyt   test_continuous5   s&    		
 (   t   __name__t
   __module__R
   R   R   R#   R/   (    (    (    sH   /Users/benoitc/Work/couchdbkit_env/src/couchdbkit/tests/test_consumer.pyR      s
   				t   __main__(	   t
   __author__R   t   unittestR,   t
   couchdbkitt   TestCaseR   R0   t   main(    (    (    sH   /Users/benoitc/Work/couchdbkit_env/src/couchdbkit/tests/test_consumer.pyt   <module>   s   
>