σ
O'^c           @@  s
  d  d l  m Z d  d l Z d  d l m Z y d  d l Z Wn e k
 rU d Z n Xd  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 m Z 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   count(   t   pyamqp(   t
   Connection(   t   nextfun(   t   Caset   Mockt   SkipTestt   mask_modulest   patcht   MockConnectionc           B@  s   e  Z d    Z RS(   c         C@  s   | |  | <d  S(   N(    (   t   selft   keyt   value(    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   __setattr__   s    (   t   __name__t
   __module__R   (    (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyR
      s   t   test_Channelc           B@  s>   e  Z d    Z d   Z d   Z d   Z d   Z d   Z RS(   c         C@  s   t  d  k r t d   n  d t  j f d     Y} t   |  _ t t d   |  j j _	 i  |  j _
 | |  j d  |  _ d  S(   Ns   py-amqp not installedt   Channelc           B@  s)   e  Z g  Z d    Z d   Z d   Z RS(   c         _@  s   d  S(   N(    (   R   t   argst   kwargs(    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   _x_open"   s    c         _@  s   |  j  S(   N(   t   wait_returns(   R   R   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   wait%   s    c         _@  s   d  S(   N(    (   R   R   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   _send_method(   s    (   R   R   R   R   R   R   (    (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyR      s   		i    (   R   t   NoneR   R   R   t   connR   R   t   _get_free_channel_idt   side_effectt   channelst   channel(   R   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   setUp   s    c         C@  s   |  j  |  j j  d  S(   N(   t   assertFalseR   t   no_ack_consumers(   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt	   test_init0   s    c         C@  s,   |  j  |  j j d d d d d i   d  S(   Nt   foobari
   s   application/datas   utf-8t
   properties(   t
   assertTrueR   t   prepare_message(   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_prepare_message3   s    c         C@  s8   t    } i  | _ i  | _ |  j |  j j |   d  S(   N(   R   t   headersR$   R%   R   t   message_to_python(   R   t   message(    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_message_to_python9   s    			c         C@  s7   |  j  |  j j  |  j j   |  j |  j j  d  S(   N(   t   assertIsNotNoneR   t
   connectiont   closet   assertIsNone(   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt$   test_close_resolves_connection_cycle?   s    c         C@  s   d |  j  _ |  j  j d d t |  j d |  j  j  d |  j  _ |  j  j d d t |  j d |  j  j  |  j  j d  |  j d |  j  j  d  S(   Ns   my-consumer-tagt   foot   no_acks   other-consumer-tagt   bar(	   R   R   t   basic_consumet   Truet   assertInR!   t   Falset   assertNotInt   basic_cancel(   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt'   test_basic_consume_registers_ack_statusD   s    (   R   R   R   R"   R'   R+   R0   R:   (    (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyR      s   					t   test_Transportc           B@  sS   e  Z d    Z d   Z d   Z d   Z d   Z d   Z e d  d    Z	 RS(   c         C@  s=   t  d  k r t d   n  t d  |  _ |  j j |  _ d  S(   Ns   py-amqp not installeds	   pyamqp://(   R   R   R   R   R-   t	   transport(   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyR   S   s    c         C@  s*   t    } |  j j |  | j j   d  S(   N(   R   R<   t   create_channelR   t   assert_called_with(   R   R-   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_create_channelY   s    	c         C@  s   |  j  |  j j    d  S(   N(   R%   R<   t   driver_version(   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_driver_version^   s    c         C@  s6   t    } |  j j | d d | j j d d  d  S(   Nt   timeoutg      $@(   R   R<   t   drain_eventsR>   (   R   R-   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_drain_eventsa   s    	c         C@  s   d t  f d     Y} | |  j _ d |  j j _ |  j j   } |  j | j d  d |  j j _ |  j j   } |  j | j d  d  S(   Nt   Connc           B@  s   e  Z d    Z RS(   c         [@  s   t  |   j |  d  S(   N(   t   varst   update(   R   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   __init__j   s    (   R   R   RH   (    (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyRE   h   s   t	   localhosts   127.0.0.1:5672s   example.coms   example.com:5672(   t   objectR<   R   t   clientt   hostnamet   establish_connectiont   assertEqualt   host(   R   RE   t   conn1t   conn2(    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt$   test_dnspython_localhost_resolve_bugf   s    c         C@  sF   t    } t    | _ |  j j |  |  j | j  | j j   d  S(   N(   R   RK   R<   t   close_connectionR/   R.   R>   (   R   R-   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_close_connectionv   s
    	t   sslc         C@  s]   t  j j d  } z' d d l m } |  j | j d  Wd  | d  k	 rX | t  j d <n  Xd  S(   Ns   amqp.connectioni    (   t   SSLError(   t   syst   modulest   popt   amqp.connectionRV   RN   R   R   (   R   t   pmRV   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_import_no_ssl~   s    (
   R   R   R   R?   RA   RD   RR   RT   R   R\   (    (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyR;   Q   s   						t   test_pyamqpc           B@  s>   e  Z d    Z d   Z d   Z d   Z d   Z d   Z RS(   c         C@  s   t  d  k r t d   n  d  S(   Ns   py-amqp not installed(   R   R   R   (   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyR      s    c         C@  sV   d t  j f d     Y} t d d  d |  j   } |  j | d d | j f  d  S(   Nt	   Transportc           B@  s   e  Z e Z RS(    (   R   R   R
   R   (    (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyR^      s   t   portR<   RO   s   127.0.0.1:%s(   R   R^   R   R   t   connectRN   t   default_port(   R   R^   t   c(    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_default_port   s    c         C@  sL   d t  j f d     Y} t d d d |  j   } |  j | d d  d  S(   NR^   c           B@  s   e  Z e Z RS(    (   R   R   R
   R   (    (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyR^      s   R_   i9  R<   RO   s   127.0.0.1:1337(   R   R^   R   R`   RN   (   R   R^   Rb   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_custom_port   s    c         C@  sc   t  j t    } t d d  } t d d  } | j | |  | j j | j | j | |  d  S(   Nt   nameR   t   loop(   R   R^   R   t   register_with_event_loopt
   add_readerR>   t   sockt   on_readable(   R   t   tR   Rf   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_register_with_event_loop    s    	c         C@  sE   t  j t    } t   } | j | d d | j j d d  d  S(   Nt   rategmηϋ©ρR@(   R   R^   R   t   heartbeat_checkt   heartbeat_tickR>   (   R   Rk   R   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_heartbeat_check©   s    	c      	   C@  sW   t  d  E } t j t    } | j d d d | j | j d d d Wd  QXd  S(   Ns"   kombu.transport.pyamqp.get_manageri   t   kwi   (   R	   R   R^   R   t   get_managerR>   RK   (   R   Rr   Rk   (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   test_get_manager―   s    (   R   R   R   Rc   Rd   Rl   Rp   Rs   (    (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyR]      s   							(   t
   __future__R    RW   t	   itertoolsR   t   amqpt   ImportErrorR   R   t   kombu.transportt   kombuR   t
   kombu.fiveR   t   kombu.tests.caseR   R   R   R   R	   t   dictR
   R   R;   R]   (    (    (    sC   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_pyamqp.pyt   <module>   s   
(88