ó
O'—^c           @@  s€   d  d l  m Z d  d l Z d  d l Z d  d l m Z m Z m Z m Z m	 Z	 d  d l
 m Z m Z d e f d „  ƒ  YZ d S(   i    (   t   absolute_importN(   t
   Connectiont   Exchanget   Queuet   Consumert   Producer(   t   Caset   SkipTestt   test_FilesystemTransportc           B@  s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C@  sõ   t  j d k r t d ƒ ‚ n  y t j ƒ  } t j ƒ  } Wn t k
 rY t d ƒ ‚ n Xt d d d i | d 6| d 6ƒ |  _ t d d d i | d 6| d 6ƒ |  _ t	 d	 ƒ |  _
 t d	 d
 |  j
 d d	 ƒ|  _ t d d
 |  j
 d d ƒ|  _ d  S(   Nt   win32s   Needs win32con modules-   filesystem transport: cannot create tempfilest	   transportt
   filesystemt   transport_optionst   data_folder_int   data_folder_outt   test_transport_filesystemt   exchanget   routing_keyt   test_transport_filesystem2(   t   syst   platformR   t   tempfilet   mkdtempt	   ExceptionR   t   ct   pR   t   eR   t   qt   q2(   t   selfR   R   (    (    sG   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_filesystem.pyt   setUp   s,    				c         @  sÝ   t  |  j j ƒ  |  j ƒ } t |  j j ƒ  |  j d t ƒ} x. t d ƒ D]  } | j	 i | d 6d d ƒqI Wg  ‰  ‡  f d †  } | j
 | ƒ | j ƒ  x' t ˆ  ƒ d k r² Pn  |  j j ƒ  qœ W|  j t ˆ  ƒ d ƒ d  S(   Nt   no_acki
   t   fooR   R   c         @  s   ˆ  j  | ƒ d  S(   N(   t   append(   t   message_datat   message(   t	   _received(    sG   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_filesystem.pyt   callback1   s    (   R   R   t   channelR   R   R   R   t   Truet   ranget   publisht   register_callbackt   consumet   lent   drain_eventst   assertEqual(   R   t   producert   consumert   iR%   (    (   R$   sG   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_filesystem.pyt   test_produce_consume_noack'   s    !
c   
      @  sÓ  |  j  j ƒ  } |  j j ƒ  } t | |  j ƒ } t | |  j ƒ } t | |  j ƒ } |  j | ƒ j ƒ  x. t	 d ƒ D]  } | j
 i | d 6d d ƒqt Wx. t	 d ƒ D]  } | j
 i | d 6d d ƒq¥ Wg  ‰  g  ‰ ‡  f d †  } ‡ f d †  } | j | ƒ | j | ƒ | j ƒ  | j ƒ  x1 t ˆ  ƒ t ˆ ƒ d k rDPn  |  j j ƒ  q$W|  j t ˆ  ƒ t ˆ ƒ d ƒ | j
 i t d	 6d d d
 d ƒ|  j | ƒ j ƒ  }	 |  j |	 j i t d	 6ƒ x. t	 d ƒ D]  } | j
 i | d 6d d ƒqÑW|  j |  j | ƒ j ƒ  ƒ |  j | ƒ j ƒ  |  j | ƒ j ƒ  |  j |  j | ƒ j ƒ  ƒ x. t	 d ƒ D]  } | j
 i | d 6d d ƒq`W|  j |  j | ƒ j ƒ  ƒ |  j | ƒ j ƒ  |  j |  j | ƒ j ƒ  ƒ d  S(   Ni
   R    R   R   R   c         @  s   ˆ  j  | ƒ | j ƒ  d  S(   N(   R!   t   ack(   R"   R#   (   t
   _received1(    sG   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_filesystem.pyt	   callback1P   s    c         @  s   ˆ  j  | ƒ | j ƒ  d  S(   N(   R!   R3   (   R"   R#   (   t
   _received2(    sG   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_filesystem.pyt	   callback2T   s    i   t
   compressedt   compressiont   zlib(   R   R&   R   R   R   R   R   R   t   declareR(   R)   R*   R+   R,   R-   R.   R'   t   gett   assertDictEqualt   payloadt
   assertTruet   deletet   assertIsNonet   purge(
   R   t   producer_channelt   consumer_channelR/   t	   consumer1t	   consumer2R1   R5   R7   t   m(    (   R4   R6   sG   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_filesystem.pyt   test_produce_consume>   sV    

 (   t   __name__t
   __module__R   R2   RH   (    (    (    sG   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_filesystem.pyR      s   		(   t
   __future__R    R   R   t   kombuR   R   R   R   R   t   kombu.tests.caseR   R   R   (    (    (    sG   /tmp/pip-unpacked-wheel-UAnTfW/kombu/tests/transport/test_filesystem.pyt   <module>   s
   (