ó
O'—^c           @@  s.  d  d l  m Z d  d l Z d  d l m Z d  d l m Z m Z d  d l m	 Z	 d  d l
 m Z d  d l m Z d  d l m Z m Z m Z m Z d	 „  Z d
 „  Z d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d S(   i    (   t   absolute_importN(   t
   Connection(   t   ResourceErrort   ChannelError(   t   virtual(   t   uuid(   t   compress(   t   Caset   Mockt   patcht   redirect_stdoutsc          K@  s   t  d d |   S(   Nt	   transports!   kombu.transport.virtual:Transport(   R   (   t   kwargs(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   client   s    c           C@  s   t  d d ƒ S(   NR   t   memory(   R   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   memory_client   s    t   test_BrokerStatec           B@  s   e  Z d  „  Z RS(   c         C@  sz   t  j ƒ  } |  j t | d ƒ ƒ |  j t | d ƒ ƒ t  j d d d d ƒ } |  j | j d ƒ |  j | j d ƒ d  S(   Nt	   exchangest   bindingsi   i    (   R   t   BrokerStatet
   assertTruet   hasattrt   assertEqualR   R   (   t   selft   st   t(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_constructor   s    (   t   __name__t
   __module__R   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR      s   t   test_QoSc           B@  s;   e  Z d  „  Z d „  Z d „  Z e d „  ƒ Z d „  Z RS(   c         C@  s%   t  j t ƒ  j ƒ  d d ƒ|  _ d  S(   Nt   prefetch_counti
   (   R   t   QoSR   t   channelt   q(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   setUp$   s    c         C@  s   |  j  j j ƒ  d  S(   N(   R!   t   _on_collectt   cancel(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   tearDown'   s    c         C@  sS   |  j  |  j j ƒ |  j  |  j j ƒ |  j |  j j j ƒ |  j  |  j j ƒ d  S(   N(   R   R!   R    R   t   assertFalset
   _deliveredt   restoredR#   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR   *   s    c         @  s€  g  ‰  d t  j f ‡  f d †  ƒ  Y} |  j |  j j ƒ  ƒ xJ t |  j j d ƒ D]2 } |  j j | t ƒ  ƒ |  j |  j j ƒ  ƒ qR W|  j j | d t ƒ  ƒ |  j	 |  j j ƒ  ƒ t
 t |  j j ƒ ƒ } |  j j | ƒ |  j |  j j ƒ  ƒ t ƒ  } |  j j | d | ƒ |  j	 |  j j ƒ  ƒ |  j j | ƒ |  j |  j j ƒ  ƒ | |  j j j ƒ |  j _ t ƒ  } |  j j | d | ƒ |  j j | d t ƒ|  j j ƒ  |  j j ƒ  |  j ˆ  d d d	 d
 d d d d d d g
 ƒ |  j |  j j j ƒ |  j	 |  j j ƒ |  j j ƒ  t |  j j _ |  j j ƒ  |  j | j ƒ  ƒ |  j	 | j ƒ  ƒ t |  j _ |  j j ƒ  d  S(   Nt   RestoreChannelc           @  s   e  Z e Z ‡  f d  †  Z RS(   c         @  s   ˆ  j  | ƒ d  S(   N(   t   append(   R   t   message(   t	   _restored(    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   _restore7   s    (   R   R   t   Truet
   do_restoreR-   (    (   R,   (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR)   4   s   i   i   i   t   requeuei   i	   i   i   i   i   i   (   R   t   ChannelR   R!   t   can_consumet   rangeR   R*   R   R&   t   nextt   iterR'   t   ackt   rejectR    t
   connectionR.   t   _flusht   restore_unacked_oncet   assertListEqualR(   t   Falset   getvaluet   restore_at_shutdown(   R   t   stdoutt   stderrR)   t   it   tag1t   tag2t   tag3(    (   R,   sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_can_consume0   s@    		.c         C@  s0   d |  j  j d <|  j |  j  j d ƒ d ƒ d  S(   Ni   t   foo(   R!   R'   R   t   get(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_get_   s    (   R   R   R"   R%   R   R
   RE   RH   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR   "   s
   			/t   test_Messagec           B@  s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C@  s·   t  ƒ  j ƒ  } | j d ƒ } t ƒ  } | d d <| j | ƒ } |  j | t j ƒ |  j | | j | ƒ ƒ | j	 r„ | j
 ƒ  n  |  j | j d j d ƒ ƒ |  j | j | ƒ d  S(   Ns   the quick brown fox...t
   propertiest   delivery_tags   utf-8(   R   R    t   prepare_messageR   t   message_to_pythont   assertIsInstanceR   t   Messaget   assertIst   errorst   _reraise_errorR   t   bodyt   encodeR   RK   (   R   t   ct   datat   tagR+   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_createf   s    	c         C@  s,   t  j t ƒ  i d  d 6i d d 6d 6ƒ d  S(   NRS   i   RK   RJ   (   R   RO   R   t   None(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_create_no_bodyt   s    c         C@  sÀ   t  ƒ  j ƒ  } t d d ƒ \ } } | j | d i | d 6ƒ} t ƒ  } | d d <| j | ƒ } | j ƒ  } |  j | d d j d ƒ ƒ |  j | d d | ƒ |  j	 d | d k ƒ d  S(	   Ns   the quick brown fox...t   gzipt   headerst   compressionRJ   RK   RS   s   utf-8(
   R   R    R   RL   R   RM   t   serializableR   RT   R&   (   R   RU   RS   t   content_typeRV   RW   R+   t   dict_(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_serializabley   s    (   R   R   RX   RZ   Ra   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRI   d   s   		t   test_AbstractChannelc           B@  sP   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 RS(   c         C@  s-   |  j  t ƒ  t j ƒ  j d ƒ Wd  QXd  S(   Nt   queue(   t   assertRaisest   NotImplementedErrorR   t   AbstractChannelt   _get(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRH   ˆ   s    c         C@  s0   |  j  t ƒ  t j ƒ  j d d ƒ Wd  QXd  S(   NRc   t   m(   Rd   Re   R   Rf   t   _put(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_putŒ   s    c         C@  s#   |  j  t j ƒ  j d ƒ d ƒ d  S(   NRc   i    (   R   R   Rf   t   _size(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt	   test_size   s    c         C@  s-   |  j  t ƒ  t j ƒ  j d ƒ Wd  QXd  S(   NRc   (   Rd   Re   R   Rf   t   _purge(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt
   test_purge“   s    c         C@  s-   |  j  t ƒ  t j ƒ  j d ƒ Wd  QXd  S(   NRc   (   Rd   Re   R   Rf   t   _delete(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_delete—   s    c         C@  s    |  j  t j ƒ  j d ƒ ƒ d  S(   NRc   (   t   assertIsNoneR   Rf   t
   _new_queue(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_new_queue›   s    c         C@  s    |  j  t j ƒ  j d ƒ ƒ d  S(   NRc   (   R   R   Rf   t
   _has_queue(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_has_queuež   s    c         C@  sO   d t  f d „  ƒ  Y} | ƒ  } |  j t j ƒ  j | ƒ ƒ |  j | j ƒ d  S(   Nt   Cyclec           B@  s   e  Z e Z d  „  Z RS(   c         S@  s   t  |  _ t  S(   N(   R.   t   called(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRG   ¦   s    	(   R   R   R<   Rw   RG   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRv   £   s   (   t   objectR   R   Rf   t   _pollRw   (   R   Rv   t   cycle(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt	   test_poll¡   s    	(
   R   R   RH   Rj   Rl   Rn   Rp   Rs   Ru   R{   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRb   †   s   							t   test_Channelc           B@  s[  e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d d	 „ Z
 d
 d „ Z d d „ Z d d „ Z d d „ Z d „  Z d „  Z d „  Z e d ƒ e d ƒ d „  ƒ ƒ Z d „  Z d „  Z d „  Z d 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# RS()   c         C@  s   t  ƒ  j ƒ  |  _ d  S(   N(   R   R    (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR"   ±   s    c         C@  s,   |  j  j d  k	 r( |  j  j j j ƒ  n  d  S(   N(   R    t   _qosRY   R#   R$   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR%   ´   s    c         C@  s^   t  ƒ  } | j } t d d ƒ } | _ t ƒ  | j _ |  j t ƒ  t	 j
 | ƒ Wd  QXd  S(   Nt   namet   _avail_channel_ids(   R   R   R   R   t
   IndexErrort   popt   side_effectRd   R   R   R1   (   R   RU   R   t   avail(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_exceeds_channel_max¸   s    		c         C@  s0   |  j  t ƒ  |  j j d d d ƒ Wd  QXd  S(   Nt   destt   srct   key(   Rd   Re   R    t   exchange_bind(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_exchange_bind_interfaceÀ   s    c         C@  s0   |  j  t ƒ  |  j j d d d ƒ Wd  QXd  S(   NR…   R†   R‡   (   Rd   Re   R    t   exchange_unbind(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_exchange_unbind_interfaceÄ   s    c         C@  s0   |  j  t ƒ  |  j j d d d ƒ Wd  QXd  S(   NR…   t   exR‡   (   Rd   Re   R    t   queue_unbind(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_queue_unbind_interfaceÈ   s    c         C@  s:   |  j  j j j ƒ  } |  j | ƒ | j ƒ  | j ƒ  d  S(   N(   R    R8   R   t   get_managerR   t   get_bindingst   close(   R   Rh   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_managementÌ   s    
c         C@  s   |  j  } |  j t ƒ ' | j d d d t d t d t ƒWd  QX| j d d d t d t ƒ| j d d d t d t d t ƒ|  j d | j j ƒ | j d d d t d t ƒ|  j d | j j ƒ |  j t j	 ƒ ! | j d d d t
 d t ƒWd  QXd  S(   Nt   test_exchange_declaret   directt   durablet   auto_deletet   passive(   R    Rd   R   t   exchange_declareR.   t   assertInt   stateR   R   t   NotEquivalentErrorR<   (   R   RU   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR“   Ò   s    	t   test_exchange_deletec         C@  s#  d t  j f d „  ƒ  Y} | |  j j ƒ } | j | d d t d t ƒ|  j | | j j ƒ |  j	 | | j j
 ƒ | j | ƒ |  j	 | | j j ƒ | j | d d t d t ƒ| j | ƒ | j | | | ƒ |  j | j j
 | ƒ | j | ƒ |  j	 | | j j
 ƒ |  j | | j ƒ d  S(   Nt   PurgeChannelc           B@  s   e  Z g  Z d  „  Z RS(   c         S@  s   |  j  j | ƒ d  S(   N(   t   purgedR*   (   R   Rc   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRm   ì   s    (   R   R   Rž   Rm   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR   é   s   R”   R•   R–   (   R   R1   R    R8   R˜   R.   R™   Rš   R   t   assertNotInR   t   exchange_deletet   queue_declaret
   queue_bindR   Rž   (   R   RŒ   R   RU   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRœ   ç   s    t   test_queue_delete__if_emptyc         C@  sÝ   d t  j f d „  ƒ  Y} | |  j j ƒ } | j | ƒ | j | ƒ | j | | | ƒ | j | | | ƒ | j | d t ƒ|  j	 | | j
 j ƒ d | _ | j | d t ƒ|  j | | j
 j ƒ |  j	 | | j ƒ d  S(   NR   c           B@  s&   e  Z g  Z d  Z d „  Z d „  Z RS(   i   c         S@  s   |  j  j | ƒ d  S(   N(   Rž   R*   (   R   Rc   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRm     s    c         S@  s   |  j  S(   N(   t   size(   R   Rc   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRk     s    (   R   R   Rž   R¤   Rm   Rk   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR      s   	t   if_emptyi    (   R   R1   R    R8   R˜   R¡   R¢   t   queue_deleteR.   R™   Rš   R   R¤   RŸ   Rž   (   R   t   nR   RU   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR£   ÿ   s    
	t   test_queue_purgec         C@  s|   d t  j f d „  ƒ  Y} | |  j j ƒ } | j | ƒ | j | ƒ | j | | | ƒ | j | ƒ |  j | | j	 ƒ d  S(   NR   c           B@  s   e  Z g  Z d  „  Z RS(   c         S@  s   |  j  j | ƒ d  S(   N(   Rž   R*   (   R   Rc   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRm     s    (   R   R   Rž   Rm   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR     s   (
   R   R1   R    R8   R˜   R¡   R¢   t   queue_purgeR™   Rž   (   R   R§   R   RU   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR¨     s    t   test_uniq_tagc   	      C@  s6  t  ƒ  j ƒ  } t  ƒ  j ƒ  } xA | | f D]3 } | j | ƒ | j | ƒ | j | | | ƒ q+ W| j d ƒ } | j d ƒ } | j | | | ƒ | j | | | ƒ | j | j | ƒ ƒ } | j | j | ƒ ƒ } |  j	 | j
 | j
 ƒ |  j t ƒ  t | j
 ƒ Wd  QX|  j t ƒ  t | j
 ƒ Wd  QXd  S(   Ns   George Costanzas   Elaine Marie Benes(   R   R    R˜   R¡   R¢   RL   t   basic_publishRM   t	   basic_gett   assertNotEqualRK   Rd   t
   ValueErrort   int(	   R   R§   t   c1t   c2RU   t   m1t   m2t   r1t   r2(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt'   test_basic_publish_unique_delivery_tags(  s"    t   test_basic_publishc   	      C@  s#  t  ƒ  j ƒ  } | j | ƒ | j | ƒ | j | | | ƒ | j | d ƒ | j | d | | ƒ | j d ƒ } | j | | | ƒ | j | j | ƒ ƒ } |  j	 | ƒ |  j
 | j d j d ƒ ƒ |  j | j | ƒ ƒ t ƒ  } | j | d t d | d d „  ƒ|  j | d | j ƒ | j ƒ  \ } } | j | ƒ } |  j
 | j d j d ƒ ƒ |  j
 | j d | ƒ |  j
 | j d | ƒ |  j t j ƒ  | j ƒ  Wd  QX| j | ƒ | j | ƒ | j | j | ƒ ƒ } |  j	 | ƒ |  j
 | j d j d ƒ ƒ |  j | j | ƒ ƒ d  S(	   Nt   2s   nthex quick brown fox...s   utf-8t   consumer_tagt   callbackc          W@  s   d  S(   N(   RY   (   t   a(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   <lambda>T  t    t   exchanget   routing_key(   R   R    R˜   R¡   R¢   RL   R«   RM   R¬   R   R   RS   RT   Rq   R   t   basic_consumeR<   R™   t   _active_queuest   drain_eventst   delivery_infoRd   R   t   Emptyt   basic_cancelR-   (	   R   R§   RU   Rh   R´   R¹   Rµ   t   _t   r3(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt)   test_basic_publish__get__consume__restore>  s>    	c         C@  sX   d t  j f d „  ƒ  Y} | |  j ƒ |  j _ |  j j d ƒ |  j |  j j j ƒ d  S(   Nt   MockQoSc           B@  s   e  Z e Z d  „  Z RS(   c         S@  s   t  |  _ d  S(   N(   R.   t	   was_acked(   R   RK   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR6   k  s    (   R   R   R<   RÊ   R6   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRÉ   h  s   RF   (   R   R   R    R}   t	   basic_ackR   RÊ   (   R   RÉ   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_basic_ackf  s    c         C@  s[   d t  j f d „  ƒ  Y} | |  j ƒ |  j _ |  j j d t ƒ |  j |  j j j ƒ d  S(   NRÉ   c           B@  s   e  Z e Z d  „  Z RS(   c         S@  s   t  |  _ d  S(   N(   R.   t   was_restored(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   restore_unackedw  s    (   R   R   R<   RÍ   RÎ   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRÉ   t  s   R0   (   R   R   R    R}   t   basic_recoverR.   R   RÍ   (   R   RÉ   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_basic_recover__requeuer  s    c         C@  s–   |  j  j } t ƒ  | _ i d d 6| _ t ƒ  | j  _ t | j  j _ | j ƒ  } |  j	 | d d t ƒ |  j
 | d d d ƒ |  j | j ƒ d  S(   Ni   i    (   R    t   qosR   R9   R'   R-   t
   SystemExitR‚   RÎ   RN   R   R&   (   R   R!   RQ   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt)   test_restore_unacked_raises_BaseException~  s    s,   kombu.transport.virtual.emergency_dump_states   kombu.transport.virtual.sayc         C@  sÏ   |  j  j } t ƒ  | _ d t f d „  ƒ  Y} | i d d 6ƒ | _ t ƒ  } | _ d  } y t ƒ  ‚ Wn t k
 r‚ } | } n X| d f g | _	 t
 |  j  _ | j ƒ  |  j | j ƒ |  j | j ƒ d  S(   Nt   Statec           B@  s   e  Z e Z RS(    (   R   R   R<   R(   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRÔ   ’  s   i   (   R    RÑ   R   R9   t   dictR'   RÎ   RY   t   KeyErrort   return_valueR.   R/   R:   R   Rw   (   R   t   sayt   emergency_dump_stateR!   RÔ   t   rut   exct   exc_(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt)   test_restore_unacked_once_when_unrestored‹  s    

c         C@  s-   |  j  t ƒ  |  j j d t ƒ Wd  QXd  S(   NR0   (   Rd   Re   R    RÏ   R<   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_basic_recover£  s    c         C@  sX   d t  j f d „  ƒ  Y} | |  j ƒ |  j _ |  j j d ƒ |  j |  j j j ƒ d  S(   NRÉ   c           B@  s   e  Z e Z e d  „ Z RS(   c         S@  s   t  |  _ d  S(   N(   R.   t   was_rejected(   R   RK   R0   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR7   ¬  s    (   R   R   R<   Rß   R7   (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRÉ   ©  s   RF   (   R   R   R    R}   t   basic_rejectR   Rß   (   R   RÉ   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_basic_reject§  s    c         C@  s0   |  j  j d d ƒ |  j |  j  j j d ƒ d  S(   NR   i€   (   R    t	   basic_qosR   R}   R   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_basic_qos³  s    t   test_lookup__undeliverablec      	   C@  sy   t  j ƒ  t  j d t ƒ W } |  j |  j j | | d ƒ d g ƒ |  j | ƒ |  j d | d j	 j
 d ƒ Wd  QXd  S(   Nt   records   ae.undelivers   could not be deliveredi    (   t   warningst   resetwarningst   catch_warningsR.   R;   R    t   _lookupR   R™   R+   t   args(   R   R§   t   log(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyRä   ·  s    

c         C@  s@   |  j  j ƒ  } |  j | |  j  ƒ | j ƒ  |  j | j ƒ d  S(   N(   R    t	   __enter__RP   t   __exit__R   t   closed(   R   t   x(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_contextÁ  s    
c         C@  s   |  j  |  j j ƒ d  S(   N(   R   R    Rz   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_cycle_propertyÇ  s    c         C@  s*   |  j  t ƒ  |  j j t ƒ Wd  QXd  S(   N(   Rd   Re   R    t   flowR<   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt	   test_flowÊ  s    c         C@  s0   d  |  j _ |  j j ƒ  |  j |  j j ƒ d  S(   N(   RY   R    R8   R‘   R   Rî   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_close_when_no_connectionÎ  s    c         C@  su   |  j  } t ƒ  | _ t ƒ  | _ d g | _ t ƒ  | _ t | j j _ | j	 d d ƒ | j j
 | j d d ƒd  S(   Ni   t   timeoutg      $@(   R    R   t	   _get_manyRy   t
   _consumersR}   R.   R2   R×   RÂ   t   assert_called_withRÁ   (   R   RU   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_drain_events_has_get_manyÓ  s    	c         C@  s-   |  j  j d d ƒ |  j |  j  j ƒ  ƒ d  S(   NR¾   RF   (   R    R˜   R   t   get_exchanges(   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_get_exchangesÞ  s    c         C@  sh   |  j  } | j j d ƒ d | j d <t ƒ  | _ t ƒ  | j j _ | j	 d ƒ | j j j
 d ƒ d  S(   NRï   RF   (   R    R÷   t   addt   _tag_to_queueR   RÁ   R®   t   removeR‚   RÅ   Rø   (   R   RU   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt&   test_basic_cancel_not_in_active_queuesâ  s    	c         C@  s   |  j  |  j j d ƒ ƒ d  S(   Ns   unknown-tag(   Rq   R    RÅ   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_basic_cancel_unknown_ctagì  s    c         C@  se   |  j  } | j d d ƒ | j d d ƒ | j d d d d d d ƒ |  j d t | j ƒ  ƒ ƒ d  S(   NR¾   RF   Rc   R!   R¿   t   rk(   R!   RF   R  (   R    R˜   R¡   R¢   R™   t   listt   list_bindings(   R   RU   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_list_bindingsï  s
    	c         C@  s6   |  j  } t ƒ  | _ | j d ƒ | j j d ƒ d  S(   NRF   (   R    R   R¦   t   after_reply_message_receivedRø   (   R   RU   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt!   test_after_reply_message_received÷  s    	c         C@  s   |  j  |  j j d ƒ ƒ d  S(   Nt	   xiwjqjwel(   Rq   R    R¦   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_queue_delete_unknown_queueý  s    c      	   C@  sO   t  ƒ  } |  j _ t | _ |  j t ƒ  |  j j d d d t ƒ Wd  QXd  S(   NRc   t
   21wisdjwqeR—   (	   R   R    Rt   R<   R×   Rd   R   R¡   R.   (   R   t	   has_queue(    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_queue_declare_passive   s    	($   R   R   R"   R%   R„   R‰   R‹   RŽ   R’   R“   Rœ   R£   R¨   R¶   RÈ   RÌ   RÐ   RÓ   R	   RÝ   RÞ   Rá   Rã   Rä   Rð   Rñ   Ró   Rô   Rù   Rû   Rÿ   R   R  R  R  R  (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR|   ¯   sD   								'							
							
				t   test_Transportc           B@  s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c         C@  s   t  ƒ  j |  _ d  S(   N(   R   R   (   R   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR"   	  s    c         C@  s2   t  d t d d ƒ ƒ } |  j | j j d ƒ d  S(   Nt   transport_optionst   polling_intervalgfffff&@@(   R   RÕ   R   R   R  (   R   Rï   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_custom_polling_interval  s    c         C@  sv   |  j  j |  j  ƒ } |  j  j |  j  ƒ } |  j t |  j  j ƒ d ƒ |  j  j |  j  ƒ |  j |  j  j ƒ ~ ~ d  S(   Ni   (   R   t   create_channelR   t   lent   channelst   close_connectionR&   (   R   R°   R±   (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_close_connection  s    c         C@  sB   |  j  j |  j  ƒ } |  j t j ƒ  |  j  j | ƒ Wd  QXd  S(   N(   R   R  Rd   R   RÄ   t   _drain_channel(   R   R    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   test_drain_channel  s    (   R   R   R"   R  R  R  (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyR    s   				(   t
   __future__R    Ræ   t   kombuR   t   kombu.exceptionsR   R   t   kombu.transportR   t   kombu.utilsR   t   kombu.compressionR   t   kombu.tests.caseR   R   R	   R
   R   R   R   R   RI   Rb   R|   R  (    (    (    sI   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/virtual/test_base.pyt   <module>   s    "		B")ÿ Y