ó
P'—^c           @@  s6  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 d  d l 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 e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d S(   i    (   t   absolute_import(   t   groupt   chord(   t   builtins(   t	   Signature(   t   range(   t   _task_stack(   t   AppCaset   Mockt   patcht   BuiltinsCasec           B@  s   e  Z d  „  Z RS(   c         C@  sR   |  j  j d t ƒ d „  ƒ } | |  _ |  j  j d t ƒ d „  ƒ } | |  _ d  S(   Nt   sharedc         S@  s
   t  |  ƒ S(   N(   t   sum(   t   x(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   xsum   s    c         S@  s   |  | S(   N(    (   R   t   y(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   add   s    (   t   appt   taskt   FalseR   R   (   t   selfR   R   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   setup   s    	(   t   __name__t
   __module__R   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR
      s   t   test_backend_cleanupc           B@  s   e  Z d  „  Z RS(   c         C@  sZ   t  ƒ  |  j j _ d |  j j j _ t j |  j ƒ } | ƒ  |  j |  j j j j ƒ d  S(   Nt   cleanup(	   R   R   t   backendR   R   R   t   add_backend_cleanup_taskt
   assertTruet   called(   R   t   cleanup_task(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_run   s
    (   R   R   R   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR      s   t   test_mapc           B@  s   e  Z d  „  Z RS(   c         C@  s]   |  j  j d t ƒ d „  ƒ } |  j  j d | d	 d
 d g ƒ } |  j | d d d g ƒ d  S(   NR   c         S@  s   |  d |  d S(   Ni    i   (    (   R   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   map_mul'   s    s
   celery.mapi   i   i   i   i@   (   i   i   (   i   i   (   i   i   (   R   R   R   t   taskst   assertEqual(   R   R!   t   res(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR   %   s    (   R   R   R   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR    #   s   t   test_starmapc           B@  s   e  Z d  „  Z RS(   c         C@  s]   |  j  j d t ƒ d „  ƒ } |  j  j d | d	 d
 d g ƒ } |  j | d d d g ƒ d  S(   NR   c         S@  s   |  | S(   N(    (   R   R   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   smap_mul5   s    s   celery.starmapi   i   i   i   i@   (   i   i   (   i   i   (   i   i   (   R   R   R   R"   R#   (   R   R&   R$   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR   3   s    (   R   R   R   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR%   1   s   t   test_chunksc           B@  s   e  Z e d  ƒ d „  ƒ Z RS(   s!   celery.canvas.chunks.apply_chunksc         C@  sU   |  j  j d t ƒ d „  ƒ } |  j  j d | d d	 d
 g d ƒ |  j | j ƒ d  S(   NR   c         S@  s   |  S(   N(    (   t   l(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt
   chunks_mulD   s    s   celery.chunksi   i   i   i   (   i   i   (   i   i   (   i   i   (   R   R   R   R"   R   R   (   R   t   apply_chunksR)   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR   A   s    (   R   R   R	   R   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR'   ?   s   t
   test_groupc           B@  s>   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C@  s/   t  j |  j ƒ ƒ  |  _ t t |  ƒ j ƒ  d  S(   N(   R   t   add_group_taskR   R   t   superR+   R   (   R   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR   P   s    c         C@  sE   t  ƒ  |  j _ t |  j j _ |  j j ƒ  |  j |  j j j	 ƒ d  S(   N(
   R   R   t   applyt   TrueR   t   conft   CELERY_ALWAYS_EAGERt   apply_asyncR   R   (   R   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_apply_async_eagerT   s    c         C@  sk   t  |  j j d d ƒ |  j j d d ƒ g ƒ } |  j j | _ | j ƒ  } |  j | j ƒ  d d g ƒ d  S(   Ni   i   i   (   R   R   t   sR   t   nameR.   R#   t   get(   R   R   R$   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt
   test_applyZ   s    0c         C@  s>   t  |  j j d d ƒ |  j j d d ƒ g ƒ } | j ƒ  d  S(   Ni   i   (   R   R   R4   R2   (   R   R   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_apply_async`   s    0c         C@  sI   t  d |  j ƒ } | j ƒ  | j ƒ  } |  j | ƒ |  j | j ƒ d  S(   NR   (   R   R   R.   R2   R   t   assertFalset   results(   R   R   R$   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_apply_emptyd   s
    
c         C@  së   t  j |  j ƒ zÉ |  j j d t ƒ z¡ |  j j j s? t ‚ t |  j j	 d d ƒ |  j j	 d d ƒ g ƒ } | ƒ  } |  j
 |  j j j ƒ |  j | |  j j j ƒ |  j t |  j j j ƒ d ƒ Wd  |  j j ƒ  XWd  t  j ƒ  Xd  S(   Nt   called_directlyi   i   i   (   R   t   pushR   t   push_requestR   t   requestt   childrent   AssertionErrorR   R4   R   t   assertInR#   t   lent   pop_requestt   pop(   R   R   R$   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_apply_async_with_parentk   s    0	#(   R   R   R   R3   R7   R8   R;   RF   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR+   N   s   					t
   test_chainc           B@  s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c         C@  s)   t  j |  ƒ t j |  j ƒ ƒ  |  _ d  S(   N(   R
   R   R   t   add_chain_taskR   R   (   R   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR   ~   s    c         C@  s~   |  j  j d d ƒ |  j  j d ƒ B|  j  j d ƒ B} | j ƒ  } |  j | j ƒ |  j | j j ƒ |  j | j j j ƒ d  S(   Ni   i   i   (   R   R4   R2   R   t   parentt   assertIsNone(   R   t   ct   result(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR8   ‚   s
    5c         @  s0  t  ‡  f d †  t d ƒ Dƒ ƒ ˆ  j j d ƒ Bˆ  j j d ƒ Bˆ  j j d ƒ B} | j j d | j ƒ \ } } ˆ  j | d t ƒ ˆ  j	 | d j
 j d ƒ ˆ  j	 | d j
 j d d j d ƒ ˆ  j j d d ƒ t  ‡  f d	 †  t d ƒ Dƒ ƒ B} | j j d | j ƒ \ } } ˆ  j | d
 t  ƒ d  S(   Nc         3@  s$   |  ] } ˆ  j  j | | ƒ Vq d  S(   N(   R   R4   (   t   .0t   i(   R   (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pys	   <genexpr>‹   s    i   i
   i   i   i    t   linki   c         3@  s$   |  ] } ˆ  j  j | | ƒ Vq d  S(   N(   R   R4   (   RM   RN   (   R   (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pys	   <genexpr>•   s    i   (    (    (   R   R   R   R4   t   typet   prepare_stepsR"   t   assertIsInstanceR   R   t   bodyt   options(   R   RK   R"   t   _t   c2t   tasks2(    (   R   s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_group_to_chord‰   s    ?&5c         @  sc  d t  f d „  ƒ  Y‰ ‡  ‡ f d †  } | d d ƒ | d d ƒ B| d d ƒ B} | j d d ƒ } ˆ  j | j d ƒ | j d	 d
 ƒ ˆ  j | j d j d	 d
 ƒ | j d d ƒ ˆ  j | j d j d d ƒ | j d | d ƒ g ƒ ˆ  j | j d j d | d ƒ g ƒ | j d | d ƒ g ƒ x1 | j D]& } ˆ  j | j d | d ƒ g ƒ q5Wd  S(   Nt   staticc           B@  s   e  Z d  „  Z RS(   c         _@  s   |  S(   N(    (   R   t   argst   kwargs(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   clone   s    (   R   R   R\   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyRY   ›   s   c          @  s   ˆ ˆ  j  |  | d ˆ  j  ƒS(   NRP   (   R   (   RZ   R[   (   R   RY   (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR4       s    i   i   i   t   task_idt   some_idt   group_idt   some_group_idiÿÿÿÿR   t   some_chord_idRO   i    t
   link_errort   error(   R   R2   R#   t   idR"   RT   t   assertListEqual(   R   R4   RK   t   r1R   (    (   R   RY   s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_apply_options™   s    )'(   R   R   R   R8   RX   Rg   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyRG   |   s   			t
   test_chordc           B@  s>   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C@  s/   t  j |  j ƒ ƒ  |  _ t t |  ƒ j ƒ  d  S(   N(   R   t   add_chord_taskR   R   R-   Rh   R   (   R   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR   ·   s    c         C@  sp   t  g  t d ƒ D] } |  j j | | ƒ ^ q d |  j j ƒ  ƒ} | j ƒ  } |  j | ƒ |  j | j ƒ d  S(   Ni
   RS   (   R   R   R   R4   R   R2   R   RI   (   R   RN   R   t   r(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyR8   »   s    Cc         C@  sE   |  j  g  t d ƒ D] } |  j j | | ƒ ^ q |  j j ƒ  ƒ d  S(   Ni
   (   R   R   R   R4   R   (   R   RN   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_run_header_not_groupÁ   s    c         C@  s_  |  j  j ƒ  } t g  t d ƒ D] } |  j j | | ƒ ^ q d | ƒ} t ƒ  | _ t | j j j	 _
 | j d d ƒ |  j | j j ƒ | j j d d } |  j | j d d ƒ t g  t d ƒ D] } |  j j | | ƒ ^ qÅ d | ƒ} t ƒ  | _ t | j j j	 _
 | j d d ƒ |  j | j j ƒ | j j d d } |  j | j d d ƒ d  S(	   Ni
   RS   R_   R`   i    i   R   Ra   (   R   R4   R   R   R   R   t   _typeR   R   R0   R1   R2   R   R   t	   call_argsR#   RT   (   R   RS   RN   R   t   resbodyt   x2(    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_forward_optionsÄ   s    ::c         C@  sx   t  |  j j _ t g  t d ƒ D] } |  j j | | ƒ ^ q d |  j j ƒ  ƒ} | j	 ƒ  } |  j
 | j ƒ  d ƒ d  S(   Ni
   RS   iZ   (   R/   R   R0   R1   R   R   R   R4   R   R2   R#   R6   (   R   RN   R   Rj   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_apply_eagerÕ   s    Cc         C@  s{   t  |  j j _ t g  t d ƒ D] } |  j j | ƒ ^ q d |  j j ƒ  ƒ} | j	 d g ƒ } |  j
 | j ƒ  d ƒ d  S(   Ni
   RS   i   i7   (   R/   R   R0   R1   R   R   R   R4   R   R2   R#   R6   (   R   RN   R   Rj   (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   test_apply_eager_with_argumentsÛ   s    @(   R   R   R   R8   Rk   Rp   Rq   Rr   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyRh   µ   s   					N(   t
   __future__R    t   celeryR   R   t
   celery.appR   t   celery.canvasR   t   celery.fiveR   t   celery._stateR   t   celery.tests.caseR   R   R	   R
   R   R    R%   R'   R+   RG   Rh   (    (    (    s@   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/app/test_builtins.pyt   <module>   s   
.9