ó
P'^c           @@  sf   d  d l  m Z d  d l m Z d  d l m Z d  d l m Z m Z m	 Z	 d e f d     YZ
 d S(   i    (   t   absolute_import(   t
   RPCBackend(   t   _task_stack(   t   AppCaset   Mockt   patcht   test_RPCBackendc           B@  sY   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 RS(	   c         C@  s   t  d |  j  |  _ d  S(   Nt   app(   R   R   t   b(   t   self(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   setup   s    c         C@  sB   |  j  j } |  j  j } |  j | |  |  j | |  j j  d  S(   N(   R   t   oidt   assertEqualR   (   R	   R   t   oid2(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   test_oid   s    c         C@  s   |  j  j d  d  S(   Nt   task_id(   R   t   on_reply_declare(   R	   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   test_interface   s    c         C@  sĖ   t  d d  } d | _ d | _ |  j |  j j d |  d  t    } t j |  z; d | j _ d | j _ |  j |  j j d d   d  Wd  t j
   X|  j t   |  j j d d   Wd  QXd  S(   Nt   namet   requestt   reply_tot   coridR   (   R   R   (   R   R   (   R   R   t   correlation_idt   assertTupleEqualR   t   destination_forR   t   pushR   t   Nonet   popt   assertRaisest   RuntimeError(   R	   t   reqt   task(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   test_destination_for   s"    			c         C@  s{   |  j  j } |  j | j |  j  j  |  j | j |  j  j  |  j | j |  j  j  |  j | j  |  j | j	  d  S(   N(
   R   t   bindingR   R   R   t   exchanget   routing_keyt   assertFalset   durablet   auto_delete(   R	   t   queue(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   test_binding.   s    c         C@  s/   |  j  |  j j d d g  |  j j g  d  S(   Nt   aR   (   t   assertListEqualR   t   _many_bindingsR!   (   R	   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   test_many_bindings6   s    c         C@  s&   |  j  |  j j d  |  j j  d  S(   Nt   id(   R   R   t   _create_bindingR!   (   R	   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   test_create_binding<   s    c         C@  so   t  d  ] } |  j j j j   ? } |  j j | d  f | j |  j j | j	  d t
 Wd  QXWd  QXd  S(   Ns!   celery.backends.rpc.maybe_declareR   t   retry(   R   R   t   amqpt   producer_poolt   acquireR   t   on_task_callt   assert_called_withR!   t   channelt   True(   R	   t   mdt   prod(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   test_on_task_call?   s    c         C@  s?   |  j  j d  } |  j | |  j  j  |  j | j d  d  S(   NR   t    (   R   t   _create_exchanget   assertIsInstancet   ExchangeR   R   (   R	   t   ex(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   test_create_exchangeH   s    (   t   __name__t
   __module__R
   R   R   R    R(   R,   R/   R:   R@   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyR   	   s   									N(   t
   __future__R    t   celery.backends.rpcR   t   celery._stateR   t   celery.tests.caseR   R   R   R   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/backends/test_rpc.pyt   <module>   s   